{
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "# 箱线图 (Box Plot) 教程\n",
        "\n",
        "本部分将详细讲解如何使用 Matplotlib 绘制箱线图，包括基础箱线图的绘制、箱线图的定制选项以及多组箱线图的应用。\n",
        "\n",
        "## 学习内容\n",
        "1. **基础箱线图**\n",
        "   - `plt.boxplot(x)` 绘制箱线图\n",
        "   - 理解箱线图的五个统计量：最小值、Q1、中位数、Q3、最大值\n",
        "   - `labels`：分组标签\n",
        "\n",
        "2. **箱线图定制**\n",
        "   - `notch`：是否显示缺口（置信区间）\n",
        "   - `patch_artist`：是否填充\n",
        "   - `showmeans`：显示均值\n",
        "   - `showfliers`：显示异常值\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 1,
      "metadata": {},
      "outputs": [],
      "source": [
        "# 导入必要的库\n",
        "import matplotlib.pyplot as plt\n",
        "import numpy as np\n",
        "\n",
        "# 设置中文字体（如果需要显示中文）\n",
        "plt.rcParams['font.sans-serif'] = ['PingFang SC', 'Arial Unicode MS']\n",
        "plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示问题\n",
        "\n",
        "# 在 Jupyter Notebook 中内联显示图形\n",
        "%matplotlib inline\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 第一部分：基础箱线图\n",
        "\n",
        "箱线图（Box Plot）是一种用于展示数据分布的统计图表，它能够显示数据的中位数、四分位数、异常值等统计信息。箱线图特别适合用于比较不同组数据的分布情况。\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "### 1.1 箱线图的五个统计量\n",
        "\n",
        "箱线图通过五个关键统计量来展示数据的分布：\n",
        "\n",
        "1. **最小值（Minimum）**：数据的最小值，或 Q1 - 1.5×IQR（如果存在异常值）\n",
        "2. **第一四分位数（Q1）**：25%的数据小于等于这个值\n",
        "3. **中位数（Median）**：50%的数据小于等于这个值，即第二四分位数\n",
        "4. **第三四分位数（Q3）**：75%的数据小于等于这个值\n",
        "5. **最大值（Maximum）**：数据的最大值，或 Q3 + 1.5×IQR（如果存在异常值）\n",
        "\n",
        "**箱线图的组成部分**：\n",
        "- **箱体（Box）**：从 Q1 到 Q3 的矩形区域，包含中间50%的数据\n",
        "- **中位线（Median Line）**：箱体中间的线，表示中位数\n",
        "- **须线（Whiskers）**：从箱体延伸到最小值和最大值的线\n",
        "- **异常值（Outliers）**：超出 1.5×IQR 范围的数据点（IQR = Q3 - Q1）\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 2,
      "metadata": {},
      "outputs": [
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "箱线图的五个统计量：\n",
            "最小值（下须线）: 70.19\n",
            "第一四分位数 (Q1): 90.99\n",
            "中位数 (Median): 98.10\n",
            "第三四分位数 (Q3): 106.09\n",
            "最大值（上须线）: 127.78\n",
            "\n",
            "四分位距 (IQR): 15.10\n",
            "异常值数量: 1\n",
            "异常值: [60.70382344]\n"
          ]
        },
        {
          "data": {
            "image/png": "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ypQpKlCggIKCgnTq1Ck9//zzCgsLU5cuXXThwgVNmDBBdevW1ddff620tDQtXrxYXbp0ued90zkZuCWpY8eOd52hvnLliuUKDKNdunRJv//+u1Vbly5dNG/ePFWvXl1VqlSR2WzW0KFD5erqqoYNG2rr1q2Wvm5ubqpXr16W448fP1579+6VJL377rsZtteqVUve3t45dDYAgAdF6AYA5Ljq1aurYcOG+uabb5SWlqYJEyaoV69eCg0NVYUKFbRx40Z9++23WrZsmWWf4OBgFS1aVNOnT9dLL72kp59+WpcuXdJ7772n+vXr69y5c/ryyy915coVLVu2TKtXr1aePHnUpEkTff/995o1a5a6du2qPHnySJKSkpJ0+PBhVa9eXc7Ozhlq/O2339S+fXtdvnxZjo6OWr16tSVgh4SEaOrUqRoyZMij+YXdRfpl7RUrVnyg/S9evKi2bdvq119/1fjx4xUSEqKePXvq559/1qlTp7Rt2zY9//zzeuGFF/T111+rU6dOGca4du2aZsyYoTFjxihPnjx67733dOPGDT377LM6deqUWrZsKWdnZy1ZskSOjo7avn27BgwYoJUrV2rFihVycnKyjBUXF5dh8bYVK1aoXr16WrlypdViaOnnvmLFCu3fv9/SXqxYMb388stWYzg5OalHjx6SlOGKhX/q0aOHSpUqleX26dOn33X/rJQpU8bqS5pNmzZleQ/222+/naHtn/eYZ7WOQGpqqkaMGKGJEyfK3t5eL7zwgtavXy9XV1edPn1atWvX1rPPPquaNWs+0PoFAICcRegGAOS4du3aqV27dpJkWSncz8/Psqp1XFycPvnkkyz3X7BggZ5++mkdO3ZM169fV3h4uMLDwyXdCSbPP/+8nn/+eUnSzz//rO+//14XL17UpEmTdOjQIf3222/6448/ZDKZMl35OikpSS1atND169e1du1affPNN2rbtq3mzp2rQ4cO6fPPP9eYMWOyfa9zZho1aqSdO3dma+Xtvzt+/LhWrlxpeZ/+aK9Vq1Zp06ZNGfo3bdpUtWvXznSs9evXq3fv3rp27Zq++OILDRw4MEOfkiVL6tdff1WHDh3UuXNnbdu2TZ9//rny5ctn6TN69GilpKQoKipK/v7+2rRpk0aOHKkdO3ZowIABqlSpkmbMmKHr16/rxIkTioqKUqtWrbR8+XL17t1b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r55cXV21fv16q4XAMpN+j3Nqaqo+/vhjzZo1SytXrtTgwYPVuHFjRUREWFbDTr8//VFLX7k6s9B94cIFyyXFRps7d65SUlJ08eJFlS9fXkOHDlWjRo0s9zXHxcXJ0dHRsnK8rZQsWdLqvukbN27oueee0+jRo62C8/Tp0xUWFpblOGazWd27d9elS5e0Zs2aDF9CpHN2dta3336rFi1a6I033lC1atVUo0aNLMfds2ePqlat+gBnZs3R0VGdO3eWdGeF9JSUFP3+++/q1KmTunTpInt7e3Xs2FH169e/r/vcAQDGIHQDAHKc2WzWwIEDtXLlSk2YMEEjRoyQm5ubFi1apIoVK+qrr76SJE2aNOmu47i6umrDhg2SpOvXr2v16tVatmyZtm7dqm+++UaBgYGSZFnJPD4+XuHh4Zlecp2Vn376SaNHj9bEiRM1efJkLV++XMnJyQ/8TOycdK/QXaRIkUeyQvXEiRPVo0cPPf/885bHryUlJWnlypVq2rSpTp8+rRIlSmRaS1JSkv74448cCZv38tdff2X6aLXRo0dneDZ3VjPdZrNZb731llatWqVFixapcuXKdz1m+qPSnn32WfXo0UMHDhywekRaugkTJlhdgv7ll19qzZo16ty5s7p27WrVt0KFCnc95t9NnjxZW7ZsUdOmTfXNN9/oq6++ynS2HwBgO5l/dQsAwAMym80KCgrSzJkzNWTIEIWEhFi2FS9eXPPmzdOIESMk3bm83Gw2W16nT5+2Guv69euaN2+eWrRoocKFC6tXr176448/NHLkSDVp0kSStHz5crVr106urq5KTEzUokWLLPsfOnTonvW++OKLOnHihBo0aKA+ffpo06ZNOXLfbU74448/JGUdurO6tDyn+fr66sUXX1RKSoqWLFmiDh06yMfHRx06dNDFixf1ww8/ZLlo3e7du+Xn56fIyMi7HuPixYvq16+fjh8/ft/1RUZGKm/evBo8eLDV6/XXX5ckNWnSJMO2fv36ZXqp98SJE/XFF19o8uTJmT6zPDM+Pj7673//q8OHD2vhwoUZtl+9elUffvihqlatqpUrV+rChQv66quv1K1bNy1atMhyebi/v78KFCig6tWra9SoUUpLS7vnsTdt2qT58+dr7969ev7559W1a1d5eHhkq24AwKNh+6/xAQD/KnZ2durUqZNq1KihgQMHZlj5u127dtqxY4eke69evmrVKgUFBalQoULq16+funbtarmf+8SJE+rXr59WrlxpCTNjx47VqFGjlJCQoDFjxqhdu3Zq3bp1hgXbYmNjdezYMau2Tz/9VGazWatXr1bv3r2tVvzO7vOV/y4gIEC7du3Srl279Oyzz96z/7x587K8J/jv97n/U/rs8jPPPJPhnHLK2rVrNWvWLG3evFkpKSmqVKmShg8frpdffllDhgxRfHy83n77bat64uPjJd35b1y4cOFMZ4xNJpOkO7O127ZtU968eTVy5Mj7rs/R0THTBcPS72t3cXHJdHtml8MPGDBA5cuX12uvvXZfNbRs2VKLFi2yuoz99u3bWrZsmd59912ZzWYlJSVp/fr1cnJyUnBwsObPn6/q1aurefPm+u9//6vVq1frq6++UrNmzTRu3DgdOnRIy5cvz3DVxR9//KGEhATL+zp16ujrr79WcHCwli9fbrViefqCewAA2yF0AwBy3EsvvaSXXnrpnv3utXp5jx49VKJECTVu3NgSPG7duqWuXbvq+++/V548eTR27Fi99957cnZ21uzZs5UvXz598skn+u6773T69OlMZ4OXL19+19Wra9WqlaGtbNmy9zyfv7t586YSExN1+/btbPWvUaOGxo0bd1/H+Dtvb+8H3vderl27pv/9738aOHCgunTpovLly2vx4sVq06aNzp07pzlz5lguHy9SpIg8PDwUFBSkoKAgSdIHH3yQ6X3Rf/31lyRpx44devfddzVkyJB73ov/T9m5vH7Dhg2W2xT+qVu3bpo7d67lvv38+fNbBe7o6GgNGTJEHh4e+umnnyTJcon9P6XfZy3d+XtapUoVnThxQv7+/po9e7aKFSumggUL6qefftL06dMl3XlU27Zt2zR16lR5enqqZMmS+vrrr1WzZk31799fX331ld58802r4zRq1CjLcw0NDVVoaOg9fycAgEeH0A0AsJl7rV5ub2+vZs2aWe3j5OSkmjVrqnz58ho8eLB8fHws2xwdHTV9+nS1bNlSY8aMkSTLYmh/9/rrr1vuK8+Onj176ueff852f0mW2fzs8vPzk5+f333t86j06NFDPXr0sATcGzdu6OOPP5aLi4u2bt1quadektzd3bV//35t375dt27dUtGiRdW2bdtMx33ttdd07tw5de/e/YEfyfbll18+0H5/l76oXma8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taG7cuXKWr9+vVXboUOHVKVKFcv2yMjIDNtbtmyZ5ZguLi5ycXHJ0G5vby97e5vf3g4AsCE+B3A/+LdDRj///LMaNmyYoX3z5s3q2bOn5f1TTz2lM2fOWN5PnjxZL730knbv3q22bdta7fv3qxqnTZumN998U4cPH9bEiRN1/PhxJSYmqmDBgipVqpQmT56suLg4JSQkqHjx4pb9GjdurO3bt+fciQLA/8nu50Cu/bRo166drl69qpkzZ8pkMmn79u1aunSp5T7uoKAgLVmyRHv27NGtW7c0adIkxcTEqF27djauHAAA4MlUtmxZ3bp1y/J66aWXNHv2bMv7n3/+2ar/r7/+qsWLF8vb21tt2rRRbGysjh49KrPZbHmNHj1ae/fu1Ztvvinpzn3iEydOlKenp95++20FBAQoJSVFEyZM0LFjx1S8eHGZzWb99ddfKl68OIEbgM3l2tDt5eWldevWKSwsTO7u7goODta0adPUqFEjSVLTpk01efJkBQYGysPDQ99++602bNigAgUK2LZwAACAJ5ijo6PlZWdnJ3t7e8t7BwcHS7+4uDj17NlTXl5elraIiAg1aNDA6hbC7777zuq+yZMnT+rdd9/VqlWr5OrqKk9PT82bN0/r16/X7NmzlZycrBs3bujIkSOWKyQBwJZy1eXl/3zEQ/369XXgwIEs+/ft21d9+/Y1uiwAAADksEOHDql48eLq3r27jh07JunOpeClSpXS999/r+7duys2NlanTp1S7dq1LfuVL19ev/76qw4dOqRZs2Zp+/btKl++vOLi4lSpUiU99dRT+u233/Tbb7+pWrVqtjo9ALDItTPdAAAAeLz88ccfsrOzs7w2bdqkXr16Wd4/99xzlr4NGjTQli1bMixEFBgYqNWrV0uStm7dqrp162a64O3+/ftVt25dlS9fXtKdyZr33ntPdevW1cqVK7Vx40YeGwYgVyB0AwAAIEc89dRT93VPd2bq16+vPXv2SJLmzZunLl26WG2fN2+e7OzsFBwcrOXLl1sCfVhYmAICAtS6dWt99913OnLkiJo3b27IeQLA/SB0AwAA4KHVrFlT27dvv+s93bVr17YE6qyULl1aFy9eVGRkpHbv3q2OHTtabe/Zs6c2bNggb29vRUdHa8OGDSpdurR+/PFHSVKJEiVUuHBh1atXT87OzoadLwBkV666pxsA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",
            "text/plain": [
              "<Figure size 1000x600 with 1 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        }
      ],
      "source": [
        "# 示例 1：理解箱线图的五个统计量\n",
        "np.random.seed(42)\n",
        "data = np.random.normal(100, 15, 100)  # 生成正态分布数据\n",
        "\n",
        "# 计算五个统计量\n",
        "q1 = np.percentile(data, 25)\n",
        "median = np.percentile(data, 50)\n",
        "q3 = np.percentile(data, 75)\n",
        "iqr = q3 - q1\n",
        "lower_bound = q1 - 1.5 * iqr\n",
        "upper_bound = q3 + 1.5 * iqr\n",
        "\n",
        "# 找出异常值\n",
        "outliers = data[(data < lower_bound) | (data > upper_bound)]\n",
        "normal_data = data[(data >= lower_bound) & (data <= upper_bound)]\n",
        "min_val = normal_data.min()\n",
        "max_val = normal_data.max()\n",
        "\n",
        "print(\"箱线图的五个统计量：\")\n",
        "print(f\"最小值（下须线）: {min_val:.2f}\")\n",
        "print(f\"第一四分位数 (Q1): {q1:.2f}\")\n",
        "print(f\"中位数 (Median): {median:.2f}\")\n",
        "print(f\"第三四分位数 (Q3): {q3:.2f}\")\n",
        "print(f\"最大值（上须线）: {max_val:.2f}\")\n",
        "print(f\"\\n四分位距 (IQR): {iqr:.2f}\")\n",
        "print(f\"异常值数量: {len(outliers)}\")\n",
        "if len(outliers) > 0:\n",
        "    print(f\"异常值: {outliers}\")\n",
        "\n",
        "# 绘制箱线图\n",
        "plt.figure(figsize=(10, 6))\n",
        "bp = plt.boxplot(data, vert=True, patch_artist=True)\n",
        "plt.title('箱线图：五个统计量示意图', fontsize=14)\n",
        "plt.ylabel('数值', fontsize=12)\n",
        "plt.grid(True, alpha=0.3, axis='y')\n",
        "\n",
        "# 添加统计量标注\n",
        "plt.text(1.15, min_val, f'最小值\\n{min_val:.2f}', \n",
        "         verticalalignment='center', fontsize=10)\n",
        "plt.text(1.15, q1, f'Q1\\n{q1:.2f}', \n",
        "         verticalalignment='center', fontsize=10)\n",
        "plt.text(1.15, median, f'中位数\\n{median:.2f}', \n",
        "         verticalalignment='center', fontsize=10, fontweight='bold')\n",
        "plt.text(1.15, q3, f'Q3\\n{q3:.2f}', \n",
        "         verticalalignment='center', fontsize=10)\n",
        "plt.text(1.15, max_val, f'最大值\\n{max_val:.2f}', \n",
        "         verticalalignment='center', fontsize=10)\n",
        "\n",
        "plt.tight_layout()\n",
        "plt.show()\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "### 1.2 plt.boxplot(x) 绘制箱线图\n",
        "\n",
        "`plt.boxplot(x)` 是绘制箱线图的基础函数。\n",
        "\n",
        "**基本语法**：\n",
        "```python\n",
        "plt.boxplot(x)\n",
        "```\n",
        "\n",
        "**参数说明**：\n",
        "- `x`：输入数据，可以是：\n",
        "  - 一维数组：单个箱线图\n",
        "  - 二维数组或列表的列表：多个箱线图\n",
        "- `labels`：分组标签（列表）\n",
        "- `vert`：是否垂直显示，`True` 垂直（默认），`False` 水平\n",
        "- `patch_artist`：是否填充箱体，`False` 不填充（默认），`True` 填充\n",
        "- `notch`：是否显示缺口（置信区间），`False` 不显示（默认），`True` 显示\n",
        "- `showmeans`：是否显示均值，`False` 不显示（默认），`True` 显示\n",
        "- `showfliers`：是否显示异常值，`True` 显示（默认），`False` 不显示\n",
        "\n",
        "**返回值**：\n",
        "- 返回一个字典，包含箱线图的所有图形元素：\n",
        "  - `boxes`：箱体对象列表\n",
        "  - `whiskers`：须线对象列表\n",
        "  - `medians`：中位线对象列表\n",
        "  - `caps`：须线端点对象列表\n",
        "  - `fliers`：异常值对象列表\n",
        "  - `means`：均值标记对象列表（如果 showmeans=True）\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 3,
      "metadata": {},
      "outputs": [
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxYAAAJOCAYAAAAqFJGJAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAPFBJREFUeJzt3XuYVQW9//EPAzjACMo1NVHEGyiQh8qMi6GmqVgZmSFyKkGNjnFUyopST6hHOolpoWZGiiWKZoIJWR4veCHtoKZAQmqhYalcYwYQBGf//vBhfk6AgEvYg7xez8Mz7rXWXvu74Xm2+z1rr7UblUqlUgAAAAqoKPcAAADA9k9YAAAAhQkLAACgMGEBAAAUJiwAAIDChAUAAFCYsABoYNauXZspU6bkhRde2Og2d955Zx599NHCj7V8+fKsXbt2s7ZdvXr1Rte9/PLLWbJkyWY/7vz581NbW7vBdS+88EKqq6s3e18N3dKlSzNmzJgsXbp0s7b/9a9/nalTp27lqQDefY18jwVAw/LPf/4zrVu3ztixY/PVr351g9vst99+6dOnT8aPH/+OH2ft2rVp2rRpbrjhhnzpS196221Xr16dvffeO5deemmGDBmy3vpzzz03119/fZYsWZLGjRtv8rFPOOGErFixIg888EC95dOnT0+fPn3yu9/9LjfeeGP69++fQYMGbXQ/jz32WFatWrXJx/tXzZs3z0c+8pEtvt878etf/zqf/vSnc9ttt2XFihXrrW/VqlUGDBhQd/uwww5Ls2bNMm3atG0yH8C7pUm5BwDgTX/729+ycuXK1NTUJEleffXVzJ07d4PbrlmzJsuWLatb//73vz8tW7asW74hjRs3TuvWrd/RbLfffnteffXVLFiwYL2Z2rZtm1tuuSVt27bN3Xffvd59u3Tpkv3226/udk1NTR544IGceeaZ62277ndda9asye67754vfOELeeihh3L11VdvMFgGDhyYF198cYufz7777pvnn39+g+tOOumk/OpXv9rsfV1xxRU555xzNrr+4Ycfzj777JM///nPueSSS7J69eo0adKk7vnsu+++9cKiUaNGm/3YAA2JIxYADUSfPn0yffr0d3TfX/7ylznppJNy77335uijj97gNnvvvXcmTpyYe++9N+eff/56RywmT56clStXrneEYPXq1enWrdtG34gffvjheeihhzY628UXX5zzzz+/7vZPfvKTDBs2LE899VQ+8IEP1Nv2kUceSd++ffPAAw+kX79+ue222/LLX/4yEyZMyE477bTevjt16pSePXvmwgsvrFs2YMCAHH300fnKV76ywXkuvPDCPPPMMxt9Pr/97W83um5D+vbtu97zeKuDDjooxxxzTK688sr87W9/y957752rrroqZ511Vt021157ba688srMnTs3H/3oR1NZWemIBbDdccQCoIF45JFHkhT7KNTHPvaxLFy4MEnygx/8INdee22effbZJG8esbjxxhtzySWX1Hujv87kyZOzaNGi9cLinHPOyfPPP58rrrgiH/zgB/OJT3wiJ5xwQi699NL87ne/y/Dhw3PCCSfkrrvuyjnnnJMf/ehHuffee3PkkUeu9xhvvPFGrrzyyvTr1y8f+MAHMmbMmDz//PPrHZF47LHH8tRTT+VPf/pT/v73v2e33XbL/PnzU1VVtd4+27Rpk0MOOSRJMnXq1MybNy/PPfdcHnvssXrb7bXXXjn++OPTpk2bDf6drnPssce+7fot8X//93+ZM2dOfvzjHydJFi9enCTZfffd6223aNGi/PnPf07iiAWw/RIWAA3U8OHDM3z48I2u79Onz3rLmjZtmnbt2iVJ5s6dmwMOOKDu9jtx4YUX5tprr81nPvOZfPWrX813v/vddO3aNVOnTs1FF12UUaNGZd99983PfvazJMn3v//9TJw4MRMnTtxgWFx//fWZO3duxo0blxUrVmTMmDHp1q1brrjiikydOjVPP/10kmTkyJFp3LhxDjzwwPTo0SOf/OQnN3mS+SuvvFL38aoHHnhgvfM3+vfvn+OPP/4d/128E+v+Xtb9W7300ktJkltuuaXuKE/fvn236UwAW4uwAGigzj///Jx66qkbXPeJT3zibe9bW1ub3//+9/nCF75QaIZDDjkkffv2zc9//vOsXbs2//3f/53TTjsto0ePTpcuXfLb3/42t956a2677ba6+wwdOjS77757rrrqqhxzzDE54IADkrx55ahvfvOb6d27d+bPn58f//jHefXVV3PbbbflzjvvTPPmzXPkkUfmV7/6Va677roMHjw4zZs3T5KsXLkys2fPziGHHLLBj0Q9/fTT+exnP5tXXnklTZo0yZ133lkXESNGjMgPf/jDnHfeeZt8vlddddU7+nvq3LnzetHy17/+NTfccEOS1B2Nefjhh1NRUZEZM2ZkxowZmT9/fpo0aZJdd9217n6OWADbK2EB8B50//3359VXX81Pf/rT3HzzzUmSu+66K8mb0TFlypS6y70+/fTTmTJlSl566aU0a9as3n4GDBhQd2Lxuqsv9ejRI8ccc0ySpLq6Ot///vc3OscvfvGLurCYO3duli5dmunTp9edS3LSSSfl8MMPz+GHH57kzY+D/epXv8o//vGPjBkzJjNnzszTTz+dv/zlL6mtrc2MGTPyoQ99qN5jrFy5Mscff3yWLl2aKVOm5Oc//3k+85nP5IYbbsjMmTNzxRVXZNSoUfnYxz62yb+3tztC9HY+/elPrxcW559/ftasWVNv2f/+7/+mT58+efDBB1MqldK8efMNfrwLYHskLAAaqEsuuSSXXHLJO7rvddddlyT50pe+lGXLluWGG26o+x6KNWvW5JOf/GTdtldeeWWuvPLKJG9+XOitnn/++bpL0a671sePfvSj3H777UmS3r17J3nzN/Fv/WjWCy+8kH322afevo444ohceeWV6datW77xjW/khRdeyBVXXJGlS5fmoosuqouIJPnud7+b5s2b56CDDkrfvn1z1llnpUePHjnooIPWe64tWrTIpEmT0r59++yzzz7p27dvHn/88bqjPeeee269k7vfzsauZzJx4sSccsop+eMf/1h3PsfbueOOO+qulLXuvIqHHnooTz31VMaOHZskWbhwYVavXp3dd989ixYtqruvIxbA9soX5AE0UGPHjk2pVNrgn3333Xej93viiSfq3vj/13/9V/7zP/+zbt2QIUMyb968zJs3r+7KR5dddlndsuuvv77evho1apRmzZrVO5LRtGnTumXrPuJzxx135Kqrrqr78/Of/3yDs5199tm5//7789RTT+XGG2/MnnvumebNm2fKlClp1qxZPvvZzyZJxowZk+XLl+fxxx/PoEGDstdee+WII45IixYtNrjfNm3a5Pe//32GDh2affbZJ88//3w6duyYRo0a5eqrr86gQYNy880358knn9zs770444wz1jsBPHnziM+3v/3tTJ48eYP3W7FiRYYNG5aDDz647spPpVIpo0aNys4775w5c+bkpz/9aWbPnp3kzStbvZWwALZbJQDK7rnnnislecd/Pvaxj5VKpVLptddeK/Xs2bNu+dKlS0t//OMfS0lKjz76aOmcc84pff7zny+VSqXSmjVrSklKN9xwQ6lUKpUeffTR0t5771164YUXNjjjtddeW0pSOvnkk0t/+ctfSqVSqfTAAw+87Vy/+MUv6u1jzJgxpUaNGpVGjRpVuueee0pXXnll6Zxzzqlbv2bNmlLTpk1L5513XqlUKpX+8pe/lNq0aVM6/vjjS7W1tevNtPfee5e+9KUvlfbdd99SklKrVq1Kn//850vf+973SjfffHPp//7v/0onnnhiqXHjxnUz7bzzzqV99933bf897rvvvlKS0s0331wqlUqlW265pZSk9Mc//rG0ePHiUq9evUpJSldcccUG7z9nzpzSvHnzSqNHjy4lKV1++eWlJKULLrigdOqpp5aSlA477LBSktKrr75auvjii0vr/pfcp0+fun9PgO2Jj0IBNAAdOnSouyRpktx88815+OGH853vfCd77rlnnn322bRp0ybt2rXLQw89lFtuuSUnn3xyjjjiiCTJHnvskSQZNWpUnnzyyXzhC1/Y4FGDhQsX5pVXXtngDKtWrcqLL7643nkByZuXwL3ooouSvHl04re//W2mTJlSt35zPgp177335utf/3qSN4+kJEn79u1z6KGH1m3TpEmTHHLIIZk2bVrmzZuXI488Mh07dszEiRM3+pv8xo0b5xe/+EXWrl2bww47LE2bNs0JJ5yQqVOn5uijj87EiROzdu3a3H333XnxxRfz/PPP5/e///0G95Uky5cvz+mnn54PfehD+fznP7/e+jZt2uSBBx7I5z//+Zx77rnZZZddctppp9XbpkuXLvVuH3jggfnc5z6X73znO6msrMwee+yRyy67LN26dUuHDh3qbeuIBbC9EhYADUCrVq0ybNiwlEqlXH755Zk+fXqOPvrounMsmjVrlq9//esZNmxYvvCFL+Txxx/PpEmTctBBB+W8886r+4jQ2WefnZ122indu3ff6MeRtlRtbW2GDBmSBQsWJHkzXu655558+tOfrjs3484776z7aE/y/7+v4a369OmTY489Nl27dk3fvn3z4Q9/OHvuuWeWLl2aV199Ne973/uSJMcff3xGjRqVXr16pVmzZvnNb36Tli1bvu2MH/3oR5Mkr7/+ev7nf/4n1113XSZNmpSzzz47RxxxRJ544ol88YtfTJK6c0Y2pFQq5Qtf+EJefvnl3HXXXamo2PAnhnfaaafceuutOf744/Mf//Ef+cAHPpCePXtudL/9+/evd/5Kv379ctlll2XIkCFv+7wAtifOsQBoANauXZtf//rXOeyww3Leeedll112yQUXXJC5c+dm7ty5KZVKWbx4cebOnZu//e1vufLKK9OsWbN897vfzR577JEzzjgjt956azp06JBRo0bV7fenP/1pbr311nc8V6lUyvDhwzNp0qS6/bZo0SITJkzI2rVrc+211yZ585yIr3zlK3V/NvQFfM2aNcvdd9+dH/zgB+nXr1/uvffeHH/88Xnf+95X7zsn1l0hqqamJvfdd1/d0ZjN8dBDD9V910ZlZWVuv/32jBw5Mk2abPr3aKVSKeecc04mT56c66+/PgcffPDbbr/TTjvVnaD9xS9+cYNHejZk2bJlGT58ePbaa6+cccYZ6613xALYXgkLgDKrqalJly5d8ulPfzrV1dX54Q9/mKOOOiqHH354unbtmq5du+b111/PtddeW3e7f//+ueCCCzJ+/Pj07Nkz48ePzy9/+cv1fsP+jW98I9/73vfe0VylUilDhgzJNddck/POOy8jRoyoW/f+978/48ePz3e+850kb34UqvSWk8vnzZu33v6WLl2a8ePH18XEaaedlr/85S85//zz675M7/bbb8+AAQPSrFmzrFixIhMmTKi7/8yZMzc588c//vE8++yz6dOnT84444z87ne/y+c+97nNer6XXnppfvSjH+Xyyy/PKaecsln3ad++fX7yk59k9uzZuemmmza5/Zo1a3LKKafkxRdfzM9+9rPsvPPOSd68NG1pI1ekAthe+CgUQJm1bNkykydPzk477VT3nQ9vvZJT8v8/CrWhy89+8YtfzNKlSzf4xnTp0qWZP39+PvrRj9ZdwWnNmjVZtGhR3njjjSRvnlOwaNGiLFu2rN59GzVqlFNOOSU9e/bM8OHD17ua0oABAzJt2rQkb5538dRTT9WtW7JkyXqzTJ48OUOGDEmHDh0ybNiwDB48uO78imeffTbDhg3LpEmT0r1790yaNCkXXXRRLrzwwixfvjyjRo3KgAED8slPfjJXXHFFvf0uW7Ysc+fOrbfssssuS6lUyp133pnTTz+93ndF/OvzXOess87K/vvvn5NPPnmD6zemf//+mTBhwgbPx3ir119/PYMGDao7avPxj398g9utWrWq7osBAbYr5TlnHIB/tcsuuxS+KtQ6f/nLX0o//vGPS6tXr663fN0Vid7uz3PPPbfB+V577bX1roS0JVeFeuONN0r33HNPac2aNXXLXn/99dLJJ59caty4cWnnnXcuXXTRRXUzr1mzpnTWWWeVkpT22WefUpLS//zP/9Sbae+9935Hf1+buipUqVQqLVq0qHTaaaeVzj777NK//du/lZKU/vSnP23yfm+17qpQK1euLB155JGlJKVRo0att93f//730te+9rXS6aefXmrUqFHpuOOO26LHAWgIHLEAaCCuuOKKui+x21L/eh5C586dM2zYsPW2u/baa+tOuP5X06dPz4knnviOHn9zrgpVUVGRo48+ut6ypk2b5oMf/GD233//nH322Wnfvn3duiZNmuSqq65K//79687vWHcC9lt9+ctfrjvXY3N86UtfyiOPPLLJ7dq2bZsnnngiM2fOTGVlZU4++eQceOCBm/04b9W8efMceOCBGTBgQN13W7zV7rvvnt/85jd5/vnns/fee693xApge9CoVPKhTgAAoBgnbwMAAIUJCwAAoDBhAQAAFCYsAACAwoQFAABQ2A59udna2tr84x//SMuWLdOoUaNyjwMAAA1KqVRKTU1N9thjj1RUvP0xiR06LP7xj3+kY8eO5R4DAAAatPnz52fPPfd822126LBo2bJlkjf/olq1alXmaQAAoGGprq5Ox44d6943v50dOizWffypVatWwgIAADZic04bcPI2AABQWIMJi0WLFqVz586ZNm1a3bJrrrkm+++/f1q1apUPfOAD+fWvf13vPjfeeGM6d+6cFi1apGfPnpk+ffo2nhoAAEgaSFhMnz49vXr1yrx58+qWTZkyJd/5zndyyy23pLq6Oj/72c9y6qmnZu7cuUmSBx98MGeddVbGjRuXmpqanHbaaenfv38WL15crqcBAAA7rLKHxfjx4zNo0KCMHj263vLjjz8+8+bNy4c+9KHU1tZm8eLFee211/LMM88kScaNG5dTTjklRx55ZBo3bpzhw4enffv2mTRpUjmeBgAA7NDKfvL2sccem8GDB6dJk/qjVFRUZNddd82f//zndOvWLWvXrs1HP/rRfOITn0iSzJo1K0OHDq13n+7du2f27NkbfazVq1dn9erVdberq6uTvPl9FrW1te/WUwIAgPeELXmPXPaw2G233d52/b777pvX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yTnnnOOL8gAAYAeyRWGxzrPPPpuvf/3r2WuvvdK5c+dccsklefnll3PjjTfmpJNOyuDBg3PhhRe+27MCAAAN1Ds6x+K2225LRUVFFi1alDvuuCNXX311vvvd76ZUKuXss8/OD37wg60xKwAA0EBtMizuvPPOrFq1KrvvvnvdydqNGjXKSy+9lD/84Q+ZMmVKnnnmmfTq1Svz58/P1KlT87WvfS3vf//7t/rwAABAw7DJsLj66qszZ86cvPLKK3njjTeSJO973/tSU1OTQw89NP369cull16abt26ZenSpTn22GNz3HHH5Q9/+EOaN2++1Z8AAABQfps8x+Kee+7J/Pnzs2LFijz44IO56KKL0qpVq7zxxhs58MADc9ZZZ6Vbt25JktatW2fq1KlZsmRJ3dWjAACA975NhsVLL72U8847L2+88UamT5+eP/3pT5kzZ07OPPPMTJkyJV/60pfyi1/8IjU1NUmSdu3a5aqrrsr9999fd4QDAAB4b9vkR6FWrVqVu+66K9OnT0+vXr3yz3/+M1/72tfyzDPPZNasWWncuHHatm2bSy65JMOHD8+KFSsyevTo3HTTTWncuPG2eA4AAECZbfKIxX777Zd77703bdu2zapVq1IqlfLiiy9m6tSpadu2bXbdddeUSqVcdtllOeCAA3LCCSfkjTfeyAEHHLAt5gcAABqATYbF0UcfnSFDhmTVqlX5zW9+kyeffDIrV67Mpz/96YwfP75uu2nTpqV///558skn853vfCdVVVVbc24AAKAB2eRHoT7+8Y8nSZYvX57a2to8/vjjOfTQQ9OqVatcfPHFmTx5cho1apRmzZpl+fLladWqVa644op85jOf2erDAwAADcMmj1h885vfzOuvv55rrrkme+21V1atWpVbbrkln/vc53LVVVdlzz33TKlUyqmnnpo777wzd9xxR55++uncdddd22J+AACgAdisy81eeumlGT9+fPbcc88cddRRGTx4cAYMGJBPfOITueqqq5IkBx10UDp37pwjjjgiQ4cOzXXXXbfVhwcAABqGTYZFv379cs899+STn/xkmjZtmp122ikXXXRRDjjggCxatChJUllZmQsuuCCPP/54kuSEE07IrFmzUiqVtu70AABAg7DJcyx22mmn9O3bN0ly4YUX1i2/7bbb6v77tddeq3efvn375qmnnkqjRo3erTkBAIAGbJNHLN6Jpk2bZtddd90auwYAABqgrRIWAADAjkVYAAAAhQkLAACgMGEBAAAUtsmrQgHQ8KxcuTJJ8uSTT5Z5knfXa6+9lhdeeCGdOnVK8+bNyz3Ou2bOnDnlHgFgqxMWANuhuXPnJknOOOOMMk/ClmjZsmW5RwDYaoQFwHboxBNPTJJ06dIlLVq0KO8w76I5c+Zk8ODBuemmm9K1a9dyj/OuatmyZfbff/9yjwGw1TT4sHjmmWdy9tln5/HHH0/79u3zla98JWeffXYqKioyY8aMnHXWWZk9e3Y6dOiQb3/72znzzDPLPTLAVteuXbucfvrp5R5jq+natWt69uxZ7jEA2AIN+uTt5cuX59hjj82+++6bv//97/nf//3f/OxnP8sll1ySpUuX5rjjjsvAgQOzbNmyTJgwISNGjMh9991X7rEBAGCH06DDYvr06Vm4cGF++MMfpkWLFtl7773zrW99K1dffXXuuOOOtG7dOiNGjEjTpk3Tu3fvDBw4MDfccEO5xwYAgB1Ogw6LtWvXZqeddkrTpk3rljVu3DgLFizIU089lR49etTbvkePHpk9e/a2HhMAAHZ4Dfociz59+qRFixb55je/mVGjRmXBggX5wQ9+kOTNj0lVVVXV276qqirLly/f6P5Wr16d1atX192urq5OktTW1qa2tnYrPAMAtsS612KvywANw5a8FjfosNhll13y29/+Nueee246duyY/fffP1/84hfzxBNPpGnTpnVhsM6KFSve9lJ+o0ePzqhRo9ZbvnDhwqxatepdnx+ALbNkyZK6nwsWLCjzNADU1NRs9rYNOixef/31rF27Nvfdd18aNWqUJBk7dmwOPvjgfPjDH85ll11Wb/uZM2emW7duG93fyJEjM2LEiLrb1dXV6dixY9q3b59WrVptnScBwGZr06ZN3c8OHTqUeRoAmjVrttnbNuiwKJVK+fjHP54xY8ZkyJAhmTFjRi699NJcfPHF+cxnPpPzzjsv11xzTYYNG5Zp06Zl4sSJmTJlykb3V1lZmcrKyvWWV1RUpKKiQZ9uArBDWPda7HUZoGHYktfiBv2qXVlZmcmTJ+fqq6/OzjvvnJNPPjnf+MY3cvrpp6dt27aZOnVqxo0bl6qqqgwdOjRjx45Nv379yj02AADscBr0EYsk+djHPpYnn3xyg+t69+690XUAAMC206CPWAAAANsHYQEAABQmLAAAgMKEBQAAUJiwAAAAChMWAABAYcICAAAoTFgAAACFCQsAAKAwYQEAABQmLAAAgMKEBQAAUJiwAAAAChMWAABAYcICAAAoTFgAAACFCQsAAKAwYQEAABQmLAAAgMKEBQAAUJiwAAAAChMWAABAYcICAAAoTFgAAACFCQsAAKAwYQEAABQmLAAAgMKEBQAAUJiwAAAAChMWAABAYcICAAAoTFgAAACFCQsAAKAwYQEAABQmLAAAgMKEBQAAUJiwAAAAChMWAABAYcICAAAoTFgAAACFCQsAAKAwYQEAABQmLAAAgMKEBQAAUJiwAAAAChMWAABAYcICAAAoTFgAAACFCQsAAKAwYQEAABQmLAAAgMKEBQAAUJiwAAAAChMWAABAYcICAAAoTFgAAACFCQsAAKAwYQEAABQmLAAAgMKEBQAAUJiwAAAACmvwYfHkk0+mX79+2XXXXbP77rtn+PDhWb16dZJkxowZOfTQQ9OiRYt06tQp1113XZmnBQCAHVODD4sBAwbk0EMPzcKFCzNr1qw8/fTTufjii7N06dIcd9xxGThwYJYtW5YJEyZkxIgRue+++8o9MgAA7HAafFhUVVWlVCqltrY2jRo1SpMmTTJz5szccccdad26dUaMGJGmTZumd+/eGThwYG644YZyjwwAADucBh8WN998cyZMmJCqqqq0a9cuTz/9dM4999zMmjUrPXr0qLdtjx49Mnv27DJNCgAAO64m5R7g7axcuTKf+tSn8rnPfS6XXnppFi9enIsuuigVFRWpqalJVVVVve2rqqqyfPnyje5v9erVdednJEl1dXWSpLa2NrW1tVvnSQCw2da9FntdBmgYtuS1uEGHxb333pvFixfn8ssvT5MmTVJVVZUhQ4bkU5/6VAYOHJh//vOf9bZfsWJFWrZsudH9jR49OqNGjVpv+cKFC7Nq1ap3e3wAttCSJUvqfi5YsKDM0wBQU1Oz2ds26LCorKxcb1njxo2zePHi7L333rnnnnvqrZs5c2a6deu20f2NHDkyI0aMqLtdXV2djh07pn379mnVqtW7NzgA70ibNm3qfnbo0KHM0wDQrFmzzd62QYdFnz590qFDh3zta1/L6NGjs3z58nz7299O3759M2TIkPz3f/93rrnmmgwbNizTpk3LxIkTM2XKlI3ur7KycoOx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",
            "text/plain": [
              "<Figure size 800x600 with 1 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        },
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "箱线图返回的对象类型：\n",
            "boxes: <class 'matplotlib.lines.Line2D'>\n",
            "whiskers: <class 'matplotlib.lines.Line2D'>\n",
            "medians: <class 'matplotlib.lines.Line2D'>\n",
            "caps: <class 'matplotlib.lines.Line2D'>\n",
            "fliers: <class 'matplotlib.lines.Line2D'>\n"
          ]
        }
      ],
      "source": [
        "# 示例 2：基础箱线图\n",
        "np.random.seed(42)\n",
        "data = np.random.normal(100, 15, 100)\n",
        "\n",
        "plt.figure(figsize=(8, 6))\n",
        "bp = plt.boxplot(data, vert=True)\n",
        "plt.title('基础箱线图示例', fontsize=14)\n",
        "plt.ylabel('数值', fontsize=12)\n",
        "plt.grid(True, alpha=0.3, axis='y')\n",
        "plt.tight_layout()\n",
        "plt.show()\n",
        "\n",
        "# 查看返回的对象\n",
        "print(\"箱线图返回的对象类型：\")\n",
        "print(f\"boxes: {type(bp['boxes'][0])}\")\n",
        "print(f\"whiskers: {type(bp['whiskers'][0])}\")\n",
        "print(f\"medians: {type(bp['medians'][0])}\")\n",
        "print(f\"caps: {type(bp['caps'][0])}\")\n",
        "print(f\"fliers: {type(bp['fliers'][0])}\")\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "### 1.3 labels 参数：分组标签\n",
        "\n",
        "`labels` 参数用于为多个箱线图添加分组标签。\n",
        "\n",
        "**基本语法**：\n",
        "```python\n",
        "plt.boxplot([data1, data2, data3], labels=['组1', '组2', '组3'])\n",
        "```\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 4,
      "metadata": {},
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/3152582801.py:17: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  axes[1].boxplot([data1, data2, data3],\n"
          ]
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABW4AAAJOCAYAAAAnP56mAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAaapJREFUeJzt3Xd8VfX9P/B3EmRKEAUFlYqIGio4oI6CKIqtIkoRsQLiQot+a7UV21rcqBUHlCrVSkXrwLrR1t06UECoigOwQVDBOgAVkYQVAzm/P/iRGgFJQsg9Ic/n43Ef4Z57xvvcm0/y5pUzspIkSQIAAAAAgNTIznQBAAAAAACUJbgFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BWqM1atXZ7qECkmSJNMlAADUejWth4zQR1IxVfk97nsP0kVwC9QI48ePj1atWsXMmTPLNf/DDz8cCxYsqPT2pk6dGkOHDl1nenFxcRx00EExY8aMja7jgAMOiAkTJpSZ9o9//CO+//3vx1tvvRU33XRTjfyPREWNGDEi9t13301axwcffBD7779/rFy5ssz0t99+O2666aZNWjcAsOWqaA8ZoY+sakcffXT885//LDPtV7/6VXTr1i0zBW1h7rjjjthrr72isLCwXPM/99xzsXz58liwYEFkZWXFxx9/HCUlJfHSSy9FRMRtt90WAwYM2JwlAxUguAVSLUmSuPHGG6Nfv37xgx/8IOrXrx/vvfdevPfeezF37tz1LvPVV1/FKaecEm+++WbptLy8vMjKylrnMWvWrPWu49Zbb43x48fHggULSh8LFy6MJ598Mv7973/Hu+++G1OnTi19/Pvf/y6z/IwZM+L111+PHXfcscz0L7/8MgoKCqKwsDBGjx4dRx99dCxdunSd7Z922mnrrfe7HlXtzjvvrND2t9lmm3Ktd+HChaWf4bcf8+bNW+8yv//976Nhw4axePHiWLhwYXz++eexatWq+MMf/hD//ve/Y+XKlWUeNeU/MgDA5lGZHjJCH1nVZs+eHU8//XR88sknMWnSpNLHp59+GkuWLCkzbdKkSbFkyZIyy19xxRXl3ofTTjtts+1HWj344IPx85//PK688spo3LhxTJo0Kfbbb7+YMmXKeuf/+uuv44ILLoiDDjooli1bFhERJSUlce6558ZJJ50UK1eujP/+97+xaNGi6twN4LskACn16quvJt27d08iYr2Ppk2brne5UaNGJXl5eUlJSUnptD333DO55JJLkvz8/CQ/Pz957rnnkohI8vPz11n+nXfeSerUqbPO9urWrZvsv//+660lJyenzDp+9atfJQcddFCSJEmybNmy0ul//etfk5122ilJkiT57LPPkl/+8pfJnDlz1qnh1FNPTY499tjSeocPH560adMmmTlzZum0tY877rgjqciP8yVLliS77LJLMn369O+c76uvvlpnW/n5+Unjxo2TK664Yp3ps2fPXu96brjhhmSfffYpfX7SSSdt8DPdYYcd1ln+xRdfTLKystaZ909/+lOSnZ293vUMHz78O/ftgAMOSB566KGNv1kAQI1T2R4ySfSRG1PePnKtq666KsnOzk7q1atX5pGTk5NkZWWtM/2ll14qs/zll1+edOzYsUzNvXv3LrN/+fn5Sffu3ZNTTz31O2t58cUXk4hIXnzxxXLvb2WW2ZBDDz00OfTQQzd5PR9++GHyxhtvJNdee21Sr1695MYbb0xmzpyZvP3228lrr72W/OQnP0nq1KmTjBkzZr3LL168OGnTpk1yww03JBGRjBo1KmnUqFHpPp500kkbfS+/7U9/+lNyzDHHbOKeAevjiFsgVVatWhV33HFHHH744XHggQfGVlttFTNnzozi4uLSx+jRo6NOnTpx3XXXrbN8SUlJ3HTTTTFkyJAoLi6Ozz77rPS1HXbYIfLy8iIvLy9222239W6/sLAw+vXrF7vttlvMnj07+vTpE/vuu2988MEH0bt373j33Xdjzpw58dxzz8VWW20V//rXvyJJkli1alXpOj7//PMYO3ZsnH/++TF37tz43ve+F3PmzInPP/885syZEwUFBTFo0KDo2bNnjB07NvbYY48oKChYp5bc3NzIy8uLli1bxm233RYffPBBtG/fPtq1a1f6ePfdd6NVq1YVeo9/+9vfRrdu3aJDhw7fOV+TJk1K369vPrKzs8u8l2sfu+++e5nlH3/88bj66qvj+eefj4ULF8bVV18dDzzwQIwbNy6SJFnv49unJb777rtxwgknxFlnnRUzZ86M3NzcuPfee+PDDz+MUaNGxUknnRTz58+PESNGRIMGDWLy5Mkxf/78OPfcc79z366//vo455xzHE0AAFuITe0hI/SR5VHePnLt+zl27Ni4+eab1zk76he/+EUccsgh60w/5JBD1llPgwYNyvScTZo0Kd2/tY+tt966QvtRk/3jH/+Ijh07xsUXXxw5OTlxxRVXRKdOnaJ79+7Rp0+f+M9//hN77LFHnHXWWXHnnXeus+yIESPikEMOiY8//jgiIubOnRt9+/aN5557Lt5999145ZVXon79+jFr1qzSx3vvvfedNZ111lnx7rvvxj333LO5dhtqLcEtkCp16tSJxYsXx8477xxTp06NpUuXRu/eveO///1vFBYWxtlnnx2//OUv44Ybboif/exn6yz/wAMPRFFRUZxyyilx2223xV577VV6XdRVq1aVNoVFRUXr3f4FF1wQCxYsiL///e/x8ssvx+rVq6OwsDCWLl0aK1asiCeeeCLatm0b3bt3j6FDh663Ub744otjr732ihNOOCGuvvrq2GGHHWLcuHGx/fbbxzXXXBNFRUWxbNmy6Nu3bzzyyCPx8ccfR25u7nrr+eSTT+LII4+MDz74II4//vjIz8+P/Pz86Nu3b2y//fbRtWvXCr2/s2fPjttvvz0uueSSCi33TatXr47s7I3/+qhXr15svfXW8dVXX0V2dnZsvfXW0aBBg3JvZ9WqVXHcccfFIYccEn/84x9jr732ihtuuCGuu+66mDVrVnzwwQdxyimnRIsWLeKCCy6Igw8+OP7+979HixYtolGjRt+57kMPPTRat24do0aNKnc9AEB6bWoPGaGP3JiK9pFPPPFEfPjhh3HEEUfErbfeWuayBjfeeGO89NJL5brUwYoVK8qEiEuWLImCgoIy09Z3yYgt0YIFC6JPnz7x8ccfx8cffxzvv/9+vPzyy9GgQYM499xz49VXX42XX345nn/++bjkkktixx13jAULFpReRuzDDz+M119/PSZMmBC33357RERMnz495s+fH6+//nrMnDkz5s6dG2PGjCkT8h900EHfWVedOnXi/PPPj0svvbTMHyKAKpC5g30BNm7p0qXJ0UcfnbRq1Spp1qxZ0rJly6RNmzbJm2++uc68q1atStq1a5eMGjUqeeutt5JmzZoll1xySZIka05xi/WcmvbtU9yKioqSDz74IEmSJLnwwguT7t27J6tXr06SZM2pWutbR0QkxcXFSZIkyQcffJBERLLzzjsnLVu2TCIieeSRR5IPP/wwmT59enLrrbcmO+20U7J06dJkypQpya233pqcffbZyZFHHlmmjlNPPTU5/vjjk5YtWyZ77LFH8vjjjyd169ZNLr/88mTkyJFJTk5O8ve//z1JkiT517/+Ve5T3E4//fRNOkWroKAgiYjk4YcfLvcyBx54YNK6devk2WefTf76179u8D1c+zj++ONLl124cGGZUxWLi4uThQsXJoccckgSEcn5559f+tqKFSsqtC9/+ctfkqZNmyZLly6t0HIAQPpVpIdMEn1keVSkjywpKUn222+/JCKSOXPmJH/+85+Tli1bJq+99lry2muvJf3790/233//0ksdHHzwwes9Pf+73rdvPypzqYQnnngiOeSQQ5Jtt902qV+/frLnnnsmN9100zrL/PnPf046d+6c1KtXL9l1113LzJMkSbJ69erkmmuuSdq2bZvUrVs32X333ZNRo0aV6WO/famE559/PjnooIOSRo0aJc2aNUuOO+645P33399g/cXFxeV+L779mDt3bul6Xn/99WSbbbZJbrnlliQikhEjRiT77bdfMmvWrGTYsGFJRCSPPfZYUlxcnDz22GNJixYtyuzHhnz11VdJgwYNkr/97W8bnRcovzqbmPsCbBaffvppPPfcc/H444/Hiy++GLvsskv89re/jQkTJsQLL7wQ22233TrLvPzyy5Gfnx9Dhw6NlStXxve+97343e9+V/r6VVddVfqX/I8//jh++MMfrrOOjz/+OP7whz9ERMSUKVPis88+i/POOy8iIhYvXhwdO3aMe++9t3T+V199NU499dTS57vuumucfvrp0apVq7jxxhvjyCOPjD59+sRzzz0Xr776ajz11FPx6aefRm5ubiRJErvuumvss88+8cMf/jBWrVoVder878dy/fr145FHHon27dtH48aN47zzzothw4ZFRMS1114bvXr1qtB7umrVqhg/fnzpOr7LvHnzYtddd93g63379t3ga/fdd1/069cvIiI+++yzeOONN6Jhw4Zx/PHHxzPPPBNz5swpnXfEiBHx5ptvlnlPv3mq2/bbb19m3TNnzoyBAwdGvXr14umnn47+/fvH119/HSNHjoz69etvdL++6ZhjjonBgwfHP//5zzjuuOMqtCwAkE6V6SEj9JEbU5E+MiLi7rvvjnfeeafMtLp168YPfvCDiFjT43366aeRl5cXEfGdZ0t16dIlJk2aVPr8tNNOi1WrVsW4ceNKp/Xu3bu8u1LqX//6V/Tq1SvOO++8uPzyy2PVqlVx4403xnnnnRcdOnSIbt26lc77y1/+Ms4777y47LLL4oknnojzzjsvGjZsGGeccUZERJx77rlx6623xgUXXBA/+tGP4u23347LL788Pv744xgxYsQ62543b14cc8wxcdppp8U111wTixcvjosvvjh69uwZ+fn566137VHlay1cuDBOPPHEyMnJiX/84x/xxRdfRM+ePeMHP/hB3HzzzWXe07VHZT/66KNx+umnx6hRo6JHjx7x85//PE488cSIiLjyyivjxRdfjEaNGsXbb78dP/nJT+Ltt9+OH/zgB+W6gV2TJk2ia9eucf/990f//v03/gEA5SK4BVLlzTffjJ/+9Kfx3nvvxU477RQ/+clP4qmnnop27drFSSedFM8//3xERHzve99bZ7lDDz00rrjiili1alVcc801cfvtt5dpWLbZZpvYeeedIyI2eArPggULYuzYsaXzJElS+rxz587l2oc77rgjhgwZEvXr1y+9rtS1114bBQUFsfXWW0d2dnZMmDAh9t1331iyZEnMmjUrunfvvs56Vq1aFZ999lkMGzYsHn/88Zg9e3bst99+MX/+/Lj00ktL97m8p4ZNmTIllixZUtowf5eddtppvU3jH//4x3j88cfjqaeeivnz58cuu+yyTiO30047lf77rrvuiuLi4mjdunUceOCBceGFF8akSZPiuuuui5/85CexzTbbRIMGDWLatGlRUFCwwVMXP/3007j++utjzJgxMWjQoLjhhhuiYcOGMWnSpBgwYEDsv//+MXr06Dj00EPL9V5ERLRs2TJ23XXXePrppwW3AFDDbUoPue++++ojN6IifeTcuXPjvPPOi1//+tdxzTXXlE4vLi6OWbNmRcSaIHv58uWlz5ctW1auOqrS22+/HQMHDixz6awf/OAHsd1228Xrr79eJrg9+eST44YbboiIiCOPPDI++uijuPTSS+P000+PuXPnxp///Oe48MILY/jw4RER8aMf/ShatmwZp5xySpx77rmxyy67lNn2tGnTYsWKFXHFFVeUHqiw8847x9///vcoLCyMxo0br7fmbbbZJpIkib/97W9xwQUXxA9+8IO455574vXXX4/zzz8/nnzyyTjzzDPjBz/4QQwdOjROOeWU2GabbUqX79WrV8yaNSt22GGH2HfffeOnP/1p5ObmxgUXXBBnnnlmFBUVxVVXXRXPPfdcRKz548IBBxxQ7ve0S5cucf3118fXX38ddevWLfdywHfI6PG+AOvx97//PZk9e3aSJGtOCbr55puT5s2bJ/vss08yderUMneQ/clPfpJsv/32yZIlS5IkSZK5c+cmLVq0SIYPH558/fXXyauvvposXrw42XPPPZPLL788mTNnTjJnzpxkwoQJG7wb8FodO3ZM9ttvv+Sdd95JkqR8p7glSZJcf/31Sb169ZJbbrkl+ctf/pKcd955pafNzZw5M4mIZPbs2cmKFSuSAw88MOnVq9c62z711FOTk046KenUqVPy/e9/PxkyZEhy1113JQMHDkzefvvt5Kabbko6deqUZGdnJ23bti3XKW5r7xr86aeflv/D+IaSkpKkTZs2ydlnn51MmTIliYiksLBwg/N/8cUXybbbbpv8+Mc/TvbZZ5/ko48+Sv7v//4vefvtt5OcnJzkrbfeSi688MLk0EMPTR5//PGkXr16Ze5QXFRUlDzyyCPJiSeemNSrVy/p0KFD0rp16yQnJ6fMIzs7O9lnn32S7Ozs5PDDD08eeeSRpKioqFz7dMQRRyRdu3at1PsBAKTLpvSQSaKP/C4V6SMXL16cXH/99cmMGTPKXCphQ/u/9rG+Sx1cfPHFm/VSCUmSJCtXrkzefvvt5OGHH06GDh2aRERyxRVXlFnm+eefL7PM3XffXXoJgjFjxiQRkcycOTMpLi4ufSxcuDCJiOSuu+5KkqTspRI++uijpGHDhslOO+2UnHfeecmTTz6ZLFu27Dvr/+STT5LRo0cn7dq1S3bYYYdkzJgxSXFxcXLdddcl9evXT26++eZk0qRJyaWXXpqMGDEiadGiRVK/fv3kmGOOSW677bYy63rttdeS7Ozs5LPPPiudNnz48OTWW29N3n///aROnTrJrFmzknr16q3zfn2XcePGJRHxnZd8ACrGzcmA1OnVq1dsu+22MXLkyMjLy4sLL7wwTj755PjDH/4QBx54YOndY1966aV45pln4m9/+1vk5ubGwoUL44gjjogVK1bE448/Hrm5ufHjH/+49I7Aw4YNi9133z123333Mn9BX58xY8bEG2+8EQsWLIjDDz887rvvvohY81fkJElKHy+++GKZ5f773//GhRdeGEVFRXH++efHmDFjYvny5VGvXr2IiMjLy4vGjRvHk08+Gb169YqVK1eWOc3r26ZOnRrvvPNODB8+PDp27Bjz5s2LLl26RJs2beL111+PRYsWrff0q/VZ+z5886/uFfHkk0/GBx98UHpK2HdZvXp1nHzyybHLLrvEEUccERFrjiK4+eabY8iQIdGzZ8/YZ599Suc/5phj4sQTT4wzzzwzkiQpnX7llVdGYWFh/PGPf4zbb789Jk2aFBMnToyLLrqo9GYU7777bowcOTKee+65aNq0afz0pz8tPS1xY5o1axYLFiyo4DsBAKRRZXvIiNBHbkRF+shtttkmfvOb35SZdvLJJ8d5550X7777biRJEj/60Y/inHPOKfN+rD3C+JsWLVoURx99dOmN1fLz86N3795x7LHHlpm2vqOON2b+/PnRp0+fyM3NjY4dO8Yll1wSX3zxRUREmX40Ys2ZWt+09ijZ+fPnx+effx4REe3bt4+tttqq9LHDDjtExJozx75t5513jkmTJsVBBx0UY8eOjZ49e8YOO+wQv/nNb0pvJPZtI0eOjD/84Q9x2mmnxSOPPBJffPFFtGvXLu6444745z//GU2bNo0f//jHUbdu3Tj++OPj17/+ddx1112xzTbblB79evbZZ0dWVlbsv//+UVJSEttvv33pzeGeeeaZOOuss6JNmzax9957x4knnhg777xzhc5oa9asWUSE/hqqkOAWSKU77rgjrr766ujbt2/MnTs3dtxxxzjyyCPj7rvvjuXLl8d5550X55xzTtxzzz2ljVrdunUjKysrfvzjH8eAAQPi1VdfjUWLFsXuu+8eERE33nhjFBcXR3Fxcbz33nsb3PZzzz0Xv/rVr+Kggw6K73//+3HvvffGoEGD4q233orJkyeXufvtYYcdVmbZ733ve3H33XfHxIkTY8mSJTF16tQ4/vjj44033oiIiJycnOjVq1dccMEFMWfOnHjqqac2eCpURJReq2zQoEFx6qmnxnXXXRcnnHBCPPPMMxGxpjH+rmuCfdPapn/t3ZErorCwMM4555zo0aPHd54i99BDD8VXX30Vy5Yti6VLl8Z9991X5lIKV199dbzyyisxcuTIdZa97rrrYvr06aX/ualbt268+eab8eSTT0Z2dnZ07do13n777WjcuHHcfPPN8cADD0Tbtm1jt912i1/84hcxbty4ePjhh2PevHkxevTocu1XcXFx6fsCANR8lekhI/SRG7MpfWRERIMGDeKjjz6Ko48+Ot56662YMmVKdOnSZaPLzZ49O/bdd9/S0D0vLy+aNGkSubm5ZaZ98x4J5XXaaafFm2++GU899VQsXbo08vPzy1za4ZsKCgrKPF8bTDZr1qw0zH7hhRfitddeW+fxzesYf9N+++0XDz/8cCxevDheeuml6NmzZ4wYMSIefPDB9c5//fXXx3vvvRfHHXdcHHfccTF16tQYPnx4jBkzJq6++uo4/fTT46qrroqf/vSn0bVr13j99dfj+OOPj3vuuSdOOeWUiFjzB4jx48dHdnZ2PP3005Gfnx/9+/ePjh07xt133126rZ///Ofx9ttvxxlnnFGu69uuVVxcHBGhv4YqJLgFUuk3v/lNfPrpp3HttddGs2bN4oILLojRo0fH2WefHe3atYsHHnggHn/88TjhhBNKl2natGnMmTMnHnzwwTjxxBPj1VdfjWOPPTYuvvjiiIjIzs6OOnXqRJ06dSInJ2e923300UejV69e8bvf/a70r8vdu3eP3/72t9G4cePo2LFjmb/u33XXXeuso3///lFUVBTnnntutGjRInr16hXz5s2LiDU3rZgzZ06UlJTEmWeeGTvuuGO53o/hw4fHnnvuGYceemjst99+cdNNN1Xk7YyIKN3W2iMJyuvrr7+O0047LZYsWRK33HLLBucrKSmJs88+Ox555JHIzc2Nl19+Ofbcc8/S12+99da4/PLL4+abb462bduus3yLFi1K/1Ox1tpGcfDgwfGLX/wizj777Nhtt91i9OjRcfXVV8f8+fPj/vvvj7lz58ZFF10UEWuOYNhqq63KtW+LFi2KFi1alGteACD9KtNDRugjN6ayfeRa2dnZce+990abNm1i//33j7p160afPn2+c5nCwsKYPHlyhY74rIhXXnkl+vTpE927dy+9ye0//vGPiFjT137T448/Xub5/fffHzvvvHO0bdu29Ajszz77LH7wgx+UPurXrx+XXHLJeo+4vfXWW+N73/te6bVgDznkkLj55psjYs3R3+uTk5MT2dnZscsuu8Q999wT7du3j8svvzy6d+8ejRs3jmnTpkXz5s3j4IMPjoMPPjjGjRu3zvfqDjvsENOmTYvs7Oy46KKL4rHHHovHHnssfvvb35a5/vP06dMjIuL555/f4BHA67No0aKICP01VCHBLZBaDRo0iOLi4njxxRfj/PPPj8suuyySJIlevXpFfn5+9OjRo8z8BQUFMWrUqDj00EOjRYsWce2110aHDh1K7wBcHjNmzIif//zncfnll5eZPmzYsNhtt902uvxrr70WO+64YxxxxBHx1ltvxeWXXx6ffvppnHPOOfHII4/EfvvtF5999lkMHTo0Lr/88tI7Cx933HExY8aMdfZn7eUAli1bFpdddlkMGjQorrzyynj77bdLX/voo4/KtW8HHnhgRES89dZb5Zo/Ys2NI4455ph4/vnn45lnnonWrVtHxP8C1W/e2fbZZ5+NxYsXx5FHHrnedeXl5cUNN9wQp59+epnp3/wr/llnnRVnn332OqenRURcdNFFcdJJJ0VExAknnBBXXHFFrF69Os4///y44ooryvX5fNvMmTOjU6dOFV4OAEivivaQEfrIjalMH/ltq1atih133DGys7OjsLAwunXrFnfeeWd8+eWX651/9OjRkZubu9FLU1RWp06d4p577olx48bF888/H5deemn89re/jQYNGqxzs7TRo0fHlVdeGf/617/izDPPjGeeeSaGDx8eWVlZsddee8Wpp54agwcPjuHDh8eLL74Yd911V/Ts2TM+/PDD2GuvvdbZ9qGHHhpffPFFHH/88fH000/Hs88+G6eddlo0bNgwjj766O+sOzs7O4YNGxZTpkyJk08+OWbNmhVnnXVWDB48OP7v//4vLrzwwvWGtmtdffXVsXDhwmjSpEkMHTo0iouLyxy5ffXVV8ef/vSnuO666+KVV16J0047rdzh7YwZM6JFixbl/qMCUA4ZuK4uwAYtXLgweeihh5KLL744Ofzww5NGjRolWVlZSceOHZMbbrghWbBgwQaXLSoqSo488sjk0ksvTd56660kSdbcBCDKcTODxYsXr7O+Cy+8MOnevXvp8/LcVKK4uDi55pprytys4l//+leyzz77JFlZWclpp51Wuq2rr746ycrKSo455pgkKysrefbZZ0uXOfXUU8t9I4a1j/LIy8tLzj333HLNO2rUqKRp06bJbrvtlkybNq3Ma0uWLEm+973vrVPD4MGD11nPDTfckOyzzz5lpi1dujSZNGlS8tOf/jTp0aPHBmvYaaedKvw+RETy9NNPb3T/3n333SQiksmTJ5fr/QAA0mtTesgk0UeWR0X6yCRJSm9ONnHixOTKK69Mtt9++6RNmzbJK6+8knzwwQfJOeeckzRr1izJzs5O2rdvn5x22mnJ73//+6SoqCh5//33k9zc3OT6669fZ71rb76WJEny3//+N5k1a1ZywAEHJIMGDfrOer59c7J58+YlxxxzTNKkSZOkSZMmyfHHH5+88847Sffu3ZOOHTuWWeahhx5KDjjggKRu3bpJu3btkgceeKDMuouLi5Orr746adu2bbLVVlslLVu2TM4888wy33ffvDlZkiTJhAkTkm7duiXbbLNN0qRJk+Swww7baF9aUlKSfPLJJ8nLL7+c3HnnnckZZ5yRbLfddkn9+vWTAQMGJB9++OF3Lj9r1qxk1KhRSYcOHZLtttsuuemmm5Lzzz8/yc7OTsaPH5/07NkzqVevXjJu3LgkSZLkySefTOrXr58ceeSRyVdfffWd606SJPnhD3+Y/OxnP9vofED5ZSXJeg5rAsiQ//73v9GlS5f43ve+F506dYrOnTvH4YcfXnoDgMqsb/ny5Rudb4899ojs7LInIfzud7+L119/PZ577rmIiLjiiiviueeei0mTJpXOM2HChDjssMOiuLi49Dpi3/byyy/HTTfdFJdccknsu+++ZV574YUX4ne/+10UFxfHq6++WnqK/9qjO9Z3k4Zve+655+JHP/rReo9S/bZRo0bFDTfcEB999NEG/wq/1tixY+ODDz6Iyy67rPT0sW8qKiqKefPmlW63QYMGscsuu6wz34gRI2LcuHFljtAoLi6OFi1aRE5OTowcOTJOPvnk9dbw/vvvl14rqyJatWq10Wu2XXbZZTF+/PiYMWNGha7dBQCkT1X3kGvXqY/8n4r0kRFrzmzq0KFDTJ48OS688MI45phj4pe//GWZvnLVqlXx6quvxssvvxwzZ86MPfbYIy677LK4/PLL4/HHH4+pU6eW3lhrraKioohYcx3VK6+8Mi6//PJo0KBBPPDAA3HsscdutK6a7Msvv4zdd989vvrqq2jdunW0b98+evXqFX379o0mTZpsdPmzzz47XnrppTj55JPj5z//een1ed9888146KGH4umnn4477rgj9ttvv9JlXnnllbj66qvjoYce+s7++v3334/dd989pk6dGgcccMAm7yuwhuAWoBZZtmxZ7LLLLnH77bfHT37yk4zWUlxcXO5r0Va1r7/+Otq2bRs33HBDnHjiiRmpAQCgJqnuPvKrr74qDRb5n08//TSaNm0aDRo0qPCyq1ev3mDoniRJlJSUlCuUX58LL7wwpk+fHk8//XSllgfWT3ALUMvcddddceONN8a0adNq7ZGmo0aNin/84x/xwgsv1Nr3AACgovSRrM8nn3wSHTp0iFdeeSXy8vIyXQ5sUdycDKCWOfXUU+Ooo46K/Pz8TJeSMR9++GHcfvvt/sMBAFAB+kjWZ8qUKfGHP/xBaAubgSNuAQAAAABSxhG3AAAAAAAps/5bV27hSkpK4tNPP43GjRs7TRYAoAZZe7JYbm5ure7j9LMAADVTkiRRWFgYO+64Y2Rnf/cxtbUyuP3000+jVatWmS4DAIBKWrJkSeTm5ma6jIzRzwIA1GwfffRR7Lzzzt85T60Mbhs3bhwRa96g2tzwAwDUNAUFBQLL0M8CANRUa/vZtf3cd6mVwe3a08lyc3M1ugAA1Dj6WQCAmq08l7tyczIAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDJ1Ml0AAEAarF69OiZOnBjz58+Pli1bRteuXSMnJyfTZQEAQLnpabcsjrgFAGq98ePHR9u2beOwww6LAQMGxGGHHRZt27aN8ePHZ7o0AAAoFz3tlkdwCwDUauPHj4++fftGhw4dYsqUKVFYWBhTpkyJDh06RN++fTW6AACknp52y5SVJEmS6SKqW0FBQTRp0iSWLFkSubm5mS4HAMiQ1atXR9u2baNDhw7x2GOPRXb2//6mXVJSEr17946ZM2fGnDlznGKWEvq4NbwPAMBaetqapSJ9nCNuAYBaa+LEiTFv3ry46KKLyjS4ERHZ2dkxdOjQmDt3bkycODFDFQIAwHfT0265BLcAQK01f/78iIho3779el9fO33tfAAAkDZ62i2X4BYAqLVatmwZEREzZ85c7+trp6+dDwAA0kZPu+US3AIAtVbXrl2jdevWcc0110RJSUmZ10pKSmL48OGx6667RteuXTNUIQAAfDc97ZYr48HtF198EW3atIkJEyaUTrv//vujffv2kZubG23bto1bb721zDJ33XVXtGnTJho2bBgdO3aMyZMnV3PVAMCWICcnJ0aOHBlPPPFE9O7du8wdeHv37h1PPPFEjBgxwk0c2Cg9LQCQKXraLVdGg9vJkydH586dY+7cuaXT5s6dGwMGDIjf//73UVBQEH//+9/jsssui3/9618REfHSSy/FOeecE2PHjo3CwsI4/fTTo2fPnrFo0aJM7QYAUIP16dMnHn744ZgxY0Z07tw5cnNzo3PnzjFz5sx4+OGHo0+fPpkukZTT0wIAmaan3TJlLLi98847Y8CAATF8+PAy0+vUqRN169aNkpKSSJIkcnJyIisrK2bMmBEREWPHjo3+/fvH4YcfHjk5OXHuuedG8+bN49FHH83EbgAAW4A+ffrEe++9Fy+++GL87W9/ixdffDHmzJmjwWWj9LQAQFroabc8dTK14aOOOioGDhwYdeqULaFVq1Zx2223Rb9+/WL16tWxevXq2GuvvaJfv34RETFjxow444wzyizToUOHDV6AOSKiqKgoioqKSp8XFBRExJrrfHz72h8AQO2UlZUVhxxySJlp+oT0SdtnUl09rX4WACgPPW36VeTzyFhw26JFi/VOf+ONN2Lw4MHx17/+NU444YR47bXX4tZbby3dqcLCwmjUqFGZZRo1ahRLly7d4LaGDx8ew4YNW2f6559/HitXrtyEvQAAoDoVFhZmuoQyqqun1c8CAGwZKtLPZiy43ZBx48bFIYccEgMGDIiIiM6dO8eECRPinHPOib///e/RuHHjWLZsWZllli1bFs2aNdvgOocOHRpDhgwpfV5QUBCtWrWK5s2bR25u7ubZEQAAqlz9+vUzXUK5VHVPq58FANgyVKSfTV1wW69evcjKyiozLScnJ+bNmxcREXvttVfptcHWmj59evTs2fM711mvXr11pmdnZ0d2dkbvzwYAQAXUlN6tqnta/SwAwJahIr1b6rq8/v37x0svvRR/+9vfYvXq1fH222/H6NGj4yc/+UlERAwaNCjuu+++mDp1ahQXF8eIESPiyy+/dKFlAABSQ08LAMCmSt0Rt3vvvXf84x//iIsvvjjOPvvsaNasWQwePDguvvjiiIjo3r17jBw5Mvr16xcLFy6M9u3bx9NPPx1NmzbNcOUAALCGnhYAgE2VlSRJkukiqltBQUE0adIklixZ4ppgAAA1iD5uDe8DAEDNVJE+LnWXSgAAAAAAqO0EtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlMh7cfvHFF9GmTZuYMGFC6bT3338/evToEY0bN47tt98+zjvvvCguLi59/a677oo2bdpEw4YNo2PHjjF58uQMVA4AAGvoaQEAqGoZDW4nT54cnTt3jrlz55ZOW7lyZfz4xz+ONm3axPz58+Ott96KZ599NkaMGBERES+99FKcc845MXbs2CgsLIzTTz89evbsGYsWLcrUbgAAUIvpaQEA2BwyFtzeeeedMWDAgBg+fHiZ6U888USsXLky/vjHP8bWW28dO+64YzzzzDPRv3//iIgYO3Zs9O/fPw4//PDIycmJc889N5o3bx6PPvpoJnYDAIBaTE8LAMDmUidTGz7qqKNi4MCBUadO2RJeffXV2HvvvePCCy+M+++/P+rWrRuDBg2KSy65JCIiZsyYEWeccUaZZTp06BAzZ87c4LaKioqiqKio9HlBQUFERJSUlERJSUlV7RIAAJtZ2nq36upp9bMAAFuGivRuGQtuW7Rosd7pX375ZTz33HPRtWvXmDt3brz//vtx9NFHR4MGDeI3v/lNFBYWRqNGjcos06hRo1i6dOkGtzV8+PAYNmzYOtM///zzWLly5abtCAAA1aawsDDTJZRRXT2tfhYAYMtQkX42Y8HthtSvXz9atGgRF110UUREfP/7349zzjknHnzwwfjNb34TjRs3jmXLlpVZZtmyZdGsWbMNrnPo0KExZMiQ0ucFBQXRqlWraN68eeTm5m6eHQEAoMrVr18/0yWUS1X3tPpZAIAtQ0X62dQFt3vuuWesXLkySkpKIjt7zSV4V61aFXXr1o2IiL322itmzJhRZpnp06dHz549N7jOevXqRb169daZnp2dXboNAADSr6b0blXd0+pnAQC2DBXp3VLX5f30pz+N4uLiGDp0aBQVFcV//vOfuPnmm2PgwIERETFo0KC47777YurUqVFcXBwjRoyIL7/8Mvr06ZPhygEAYA09LQAAmyp1R9zusMMOMWnSpPj1r38dLVu2jNzc3PjFL34RZ599dkREdO/ePUaOHBn9+vWLhQsXRvv27ePpp5+Opk2bZrhyAABYQ08LAMCmykqSJMl0EdWtoKAgmjRpEkuWLHFNMACAGkQft4b3AQCgZqpIH5e6SyUAAAAAANR2glsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBl6mS6AACqzurVq2PixIkxf/78aNmyZXTt2jVycnIyXRYAAJSLfhbgfxxxC7CFGD9+fLRt2zYOO+ywGDBgQBx22GHRtm3bGD9+fKZLAwCAjdLPApQluAXYAowfPz769u0bHTp0iClTpkRhYWFMmTIlOnToEH379tXsAgCQavpZgHVlJUmSZLqI6lZQUBBNmjSJJUuWRG5ubqbLAdgkq1evjrZt20aHDh3isccei+zs//1NrqSkJHr37h0zZ86MOXPmOM2MWmH58uUxa9asSi27YsWKmDdvXrRu3ToaNGhQ6Rry8vKiYcOGlV6eDdPHreF9ALYk+lkoa1P62Yiq6Wn1s5tPRfo417gFqOEmTpwY8+bNi/vuu69MkxsRkZ2dHUOHDo3OnTvHxIkTo1u3bpkpEqrRrFmzolOnThmtYdq0adGxY8eM1gAANYV+FsrSz7KW4Baghps/f35ERLRv3369r6+dvnY+2NLl5eXFtGnTKrVsfn5+DBw4MMaNGxft2rXbpBoAgPLRz0JZm9LPRlRNT6ufTQfBLUAN17Jly4iImDlzZhx00EHrvD5z5swy88GWrmHDhpt8dEC7du0cYQAA1UQ/C2VVRT8boafdErg5GUAN17Vr12jdunVcc801UVJSUua1kpKSGD58eOy6667RtWvXDFUIAAAbpp8FWD/BLUANl5OTEyNHjownnngievfuXeYuvL17944nnngiRowY4UYOAACkkn4WYP1cKgFgC9CnT594+OGH44ILLojOnTuXTt91113j4Ycfjj59+mSwOgAA+G76WYB1CW4BthB9+vSJn/zkJzFx4sSYP39+tGzZMrp27erIBAAAagT9LEBZgluALUhOTk5069Yt02UAAECl6GcB/sc1bgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGXqZLoAAMpavnx5zJo1q9LLr1ixIubNmxetW7eOBg0aVGodeXl50bBhw0rXAABA7ZWGfjZCTwvUfIJbgJSZNWtWdOrUKaM1TJs2LTp27JjRGgAAqJnS0M9G6GmBmk9wC5AyeXl5MW3atEovn5+fHwMHDoxx48ZFu3btKl0DAABURhr62bV1ANRkgluAlGnYsGGVHBnQrl07RxgAAFDt9LMAVcPNyQAAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAymQ8uP3iiy+iTZs2MWHChHVeW7p0aeyxxx5xxRVXlJl+1113RZs2baJhw4bRsWPHmDx5cvUUCwAA66GnBQCgqmU0uJ08eXJ07tw55s6du97Xzz777Pjggw/KTHvppZfinHPOibFjx0ZhYWGcfvrp0bNnz1i0aFF1lAwAAGXoaQEA2BwyFtzeeeedMWDAgBg+fPh6X7/99ttjwYIF0blz5zLTx44dG/3794/DDz88cnJy4txzz43mzZvHo48+Wh1lAwBAKT0tAACbS8aC26OOOiref//9OP7449d57T//+U9cddVVcc8990R2dtkSZ8yYEXvvvXeZaR06dIiZM2du1noBAODb9LQAAGwudTK14RYtWqx3+ooVK6Jfv35xyy23RMuWLdd5vbCwMBo1alRmWqNGjWLp0qUb3FZRUVEUFRWVPi8oKIiIiJKSkigpKalM+QCptfbnmp9xUHHGT/ql7XOprp5WPwvUJn4fw6YxhtKtIp9JxoLbDTn33HPjiCOOiKOPPnq9rzdu3DiWLVtWZtqyZcuiWbNmG1zn8OHDY9iwYetM//zzz2PlypWbVjBAynz55ZelXz/77LMMVwM1i/GTfoWFhZkuoVyquqfVzwK1id/HsGmMoXSrSD+buuD23nvvjbp168Ydd9wREWvuwjt16tQYP358TJ8+Pfbaa6+YMWNGmWWmT58ePXv23OA6hw4dGkOGDCl9XlBQEK1atYrmzZtHbm7u5tkRgAzZdtttS79uv/32Ga4GahbjJ/3q16+f6RLKpap7Wv0sUJv4fQybxhhKt4r0s6kLblesWFHmebdu3aJbt25xxRVXRETEoEGDonfv3jFo0KDo1KlT3HjjjfHll19Gnz59NrjOevXqRb169daZnp2dvc71xgBqurU/1/yMg4ozftKvpnwuVd3T6meB2sTvY9g0xlC6VeQzSV1wuzHdu3ePkSNHRr9+/WLhwoXRvn37ePrpp6Np06aZLg0AAMpFTwsAwMakIrhNkmSDr02YMGGdaYMHD47BgwdvxooAAKBi9LQAAFQlx0sDAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAAClTJ9MFsOVZvnx5zJo1q9LLr1ixIubNmxetW7eOBg0aVHo9eXl50bBhw0ovDwBA7ZWGnlY/CwC1m+CWKjdr1qzo1KlTpsuIadOmRceOHTNdBgAANVAaelr9LADUboJbqlxeXl5Mmzat0svn5+fHwIEDY9y4cdGuXbtNqgMAACojDT2tfhYAajfBLVWuYcOGVXJkQLt27RxhAABARuhpAYBMc3MyAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApEzGg9svvvgi2rRpExMmTCiddu+990b79u0jNzc3dt999xg9enSZZe66665o06ZNNGzYMDp27BiTJ0+u5qoBAOB/9LQAAFS1jAa3kydPjs6dO8fcuXNLpz3//PPx85//PG699dZYsmRJ3HPPPXHZZZfFww8/HBERL730UpxzzjkxduzYKCwsjNNPPz169uwZixYtytRuAABQi+lpAQDYHDIW3N55550xYMCAGD58eJnpH374Yfzyl7+Mgw8+OLKysuKggw6Kww47LF5++eWIiBg7dmz0798/Dj/88MjJyYlzzz03mjdvHo8++mgmdgMAgFpMTwsAwOZSJ1MbPuqoo2LgwIFRp07ZEgYNGlTm+aJFi2Ly5MkxYsSIiIiYMWNGnHHGGWXm6dChQ8ycOXPzFgwAAN+ipwUAYHPJWHDbokWLjc6zYMGC6NWrV+y9995x0kknRUREYWFhNGrUqMx8jRo1iqVLl25wPUVFRVFUVFT6vKCgICIiSkpKoqSkpDLlsxmt/Ux8PlA5xhBUnvGTfmn7XKqrp9XP1jx+nkDlGT+waYyhdKvIZ5Kx4HZjpk2bFscdd1x07Ngx7rvvvsjOXnNVh8aNG8eyZcvKzLts2bJo1qzZBtc1fPjwGDZs2DrTP//881i5cmXVFs4m+/LLL0u/fvbZZxmuBmoeYwgqz/hJv8LCwkyXUCFV1dPqZ2seP0+g8owf2DTGULpVpJ9NZXD7t7/9Lc4888wYOnRoXHLJJZGVlVX62l577RUzZswoM//06dOjZ8+eG1zf0KFDY8iQIaXPCwoKolWrVtG8efPIzc2t+h1gk2y77balX7fffvsMVwM1jzEElWf8pF/9+vUzXUK5VWVPq5+tefw8gcozfmDTGEPpVpF+NnXB7bPPPhunn356PPDAA9G7d+91Xh80aFD07t07Bg0aFJ06dYobb7wxvvzyy+jTp88G11mvXr2oV6/eOtOzs7NLj3ogPdZ+Jj4fqBxjiC3BnDlzMnJk5bvvvlv6NRPjp3HjxrH77rtX+3Zrkpryc62qe1r9bM3j9zFUnvHDliBT/WyEnjbtKvKZpC64veqqq2LVqlUxcODAMtMHDhwYt956a3Tv3j1GjhwZ/fr1i4ULF0b79u3j6aefjqZNm2aoYgCgKs2ZMyf22GOPjNbw7T6kOs2ePVujuwXQ0wJA7ZWGfjZCT7slSEVwmyRJ6b8nTZq00fkHDx4cgwcP3pwlAQAZsvbIhHHjxkW7du2qddsrVqyIefPmRevWraNBgwbVuu38/PwYOHBgjbuGK/+jpwUAIjLbz0boabckqQhuAbY0mTwtJj8/v8zX6ua0GKpKu3btomPHjtW+3S5dulT7NgEgjTLV0+pn2VJkqp+N0NNuKQS3AFXMaTFOiwEAqOnS0NPqZ4HaTnALUMWcFuO0GACAms6li/SzQOYJbgE2E6fFAABQ07l0EUDmZGe6AAAAAAAAyhLcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApEy5gtskSeKyyy7b6Hw5OTlRUlKyyUUBAEBV0s8CAFDT1CnPTCUlJfH73/8+rrzyyjjllFPWO0+SJFVaGAAAVBX9LAAANU2FLpWwevXqGDduXNSvXz8aNmwYjz32WHTp0iWefvrpOPjggzdXjQAAUCX0swAA1BTlCm7nzp0bERFZWVkREXHEEUfEj370o6hfv36cddZZ0bhx4zjrrLMcpQAAQCrpZwEAqGk2Gtx++eWXsf/++0dERN++fUubXQAAqAn0swAA1EQbDW633Xbb+PzzzyNJkjjwwAOroyYAAKgy+lkAAGqicl0qISsrK7KysuLXv/51JEkSX3/9daxcuTIiIpYvXx5JksTy5cs3a6EAAFBZ+lkAAGqaOhWZee1pZd+8E+/WW29d+tVpZwAApJl+FgCAmqJcwe2bb74ZW2+9dWRnZ0dJSckG58vOLtcBvAAAUK30swAA1DQbDW6//vrrOPXUU2P16tVx0kknxUknnVR6VMK33XDDDTFp0qQ45JBDqrxQgJqkxdZZ0eCr2RGf1q4AoMFXs6PF1o5WA9JFPwtQObWxp9XPAmmy0eC2bt268c4770R+fn6MHj06+vTpE8XFxdGuXbvYaqut1pn/3nvvjTfeeGOzFAtQU5zVqW60e/msiJczXUn1ahdr9h0gTfSzAJVTG3ta/SyQJuW+xm27du3illtuiV/+8pdx+umnx+677x533XXX5qwNoMYaM+3rOPGyO6NdXl6mS6lW+bNmxZiRA6JXpgsBWA/9LEDF1MaeVj8LpEmFbk4WEbHnnnvGSy+9FBMnTlzv6wsXLowddthhkwsDqMkWLE1ixTZ7ROy4b6ZLqVYrFpTEgqVJpssA+E76WYDyqY09rX4WSJMKXaimTp06MXfu3Nhqq63i8MMPX+f1iy66KE444YQqKw4AAKqSfhYAgJqiQkfclpSUxI9//ONYuHBh7LXXXnHwwQdH//79o2PHjjFs2LC47bbbYurUqZurVgAA2CT6WQAAaooKBbdZWVkxZ86cWLlyZcyYMSOeeeaZ6NOnTyxfvjzq1q0bU6dOjd12221z1QoAAJtEPwsAQE2x0eB25MiRkSRJfO9734uIiLlz58bMmTPjzTffjEcffTTq1asXxx9/fNxzzz3x6KOPxq9//evNXjQAAJSXfhYAgJpoo8FtdnZ2/Pe//40XXnghGjduHG3bto1mzZrFpZdeGvfdd1/k/f+7Sw4ePDgOOeSQyMvLi2OOOWazFw4AAOWhnwUAoCbaaHA7aNCgyM7OjkWLFsXEiRNjhx12iOuuuy4uvvji+Oqrr+KSSy6JiDV35x07dmycffbZMW/evKhTp0JXYQAAgM1CPwsAQE2UvbEZnnnmmejYsWO8+OKLcdttt8Xs2bPj+9//ftx2221xwgknRE5OTvz3v/+NiIglS5bE73//e00uAACpoZ8FAKAm2mhHeuKJJ8a7774b77zzTiRJEhMnToy//vWv0bBhw4iISJIk9tlnn+jRo0f885//jBdffHGzFw0AAOWlnwUAoCbaaHC7//77R1ZWVixZsiQWLFgQK1eujG7dusXvf//7+NGPfhRZWVnx3nvvxb777huHHXZYdOjQoTrqBgCActHPAgBQE200uL311ltj6tSp8cknn8SNN94Yp556anTo0CGOP/740lPIZs2aFVlZWTF16tR45513Yq+99trshQMAQHnoZwEAqIk2eo3b4uLiGDZsWCRJEjvuuGPccsstsXTp0vjiiy/ilVdeiSRJ4phjjokBAwbEb3/727juuuuqo24AACgX/SwAADXRRo+4XblyZTzyyCOxfPnymDRpUjz44INxwgknRM+ePaNNmzYRETF79uxYunRpNGrUKC677LJYvXp15OTkbPbiAYAtU4uts6LBV7MjPt3o35i3GA2+mh0tts7KdBlbJP0sAFDdamM/G6GnrWobDW67desWEWsa3n333Td22GGHMjdsmDt3bjRv3jyaN28eERH//ve/NbkAwCY5q1PdaPfyWREvZ7qS6tMu1uw3VU8/CwBUt9rYz0boaavaRoPbterXrx/169ePiIitttqqdPouu+xSZr499tijikoDAGqrMdO+jhMvuzPa5eVlupRqkz9rVowZOSB6ZbqQLZh+FgCoLrWxn43Q01a1cge31D5z5syJwsLCat9ufn5+ma/VrXHjxrH77rtnZNsArLFgaRIrttkjYsd9M11KtVmxoCQWLE0yXQZsUTLVz0boaQFqu9rYz0boaaua4Jb1mjNnTsaPNhk4cGDGtj179myNLgBADZaGfjZCTwsAVJ7glvVae2TCuHHjol27dtW67RUrVsS8efOidevW0aBBg2rddn5+fgwcODBjR2YAAFA1MtnPRuhpAYBNJ7jlO7Vr1y46duxY7dvt0qVLtW8TAIAtT6b62Qg9LQCwabIzXQAAAAAAAGUJbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkTMaD2y+++CLatGkTEyZMKJ322muvxQEHHBANGzaM1q1bx1/+8pcyy9x1113Rpk2baNiwYXTs2DEmT55czVUDAMD/6GkBAKhqGQ1uJ0+eHJ07d465c+eWTlu8eHH06NEj+vXrF0uWLIl77703hgwZEs8//3xERLz00ktxzjnnxNixY6OwsDBOP/306NmzZyxatChTuwEAQC2mpwUAYHPIWHB75513xoABA2L48OFlpo8fPz6aNm0aQ4YMia222iq6dOkS/fr1i7/+9a8R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4rHHHotjjjkmfv3rX8fq1aszXSoAQIXoaWsPPS0AUNVSG9z+7Gc/i3feeSfeeuut+OSTT6JBgwYxaNCgWLx4cfTo0SP69esXS5YsiXvvvTeGDBkSzz//fKZLppImTpwY8+bNi4suuiiys8t+S2ZnZ8fQoUNj7ty5MXHixAxVCABQOXra2kNPCwBUtVTenGzhwoVx//33x4wZM2LnnXeOiIhbb701Pv744xg/fnw0bdo0hgwZEhERXbp0iX79+sVf//rX6N69eybLppLmz58fERHt27df7+trp6+dDwCgJtDT1i56WgCgqqXyiNtp06ZFw4YNY+rUqbHHHntEixYt4le/+lXsvPPOMWPGjNh7773LzL/33nvHzJkzM1Qtm6ply5YRERv8DNdOXzsfAEBNoKetXfS0AEBVS+URt19++WWsXLkynnzyyZgyZUpERJx00klx8sknR4sWLaJRo0Zl5m/UqFEsXbp0g+srKiqKoqKi0ucFBQUREVFSUhIlJSWbYQ+oiC5dukTr1q3j97//fTz66KNlTi0rKSmJa665Jnbdddfo0qWLzwsAarma1AtUZU+rn00/PS0AUB4V6QNSGdzWr18/Vq1aFddff31st912ERFx1VVXxYEHHhinn356LFu2rMz8y5Yti8aNG29wfcOHD49hw4atM/3zzz+PlStXVm3xVMoll1wSP/vZz6Jnz55x7rnnRl5eXsyaNStGjx4d//rXv+K2226LRYsWZbpMACDDCgsLM11CuVVlT6ufrRn0tADAxlSkn01lcLvnnntGxJq78K61atWqyM7Ojn333TdGjx5dZv7p06dv8FpSERFDhw4tvX5YxJojFFq1ahXNmzeP3NzcKq6eyjj99NOjSZMm8Zvf/CaOPfbY0um77rprPPjgg9GnT58MVgcApEX9+vUzXUK5VWVPq5+tGfS0AMDGVKSfzUqSJNmMtVTaD3/4w2jUqFHcf//9kZOTEyeccEJst912ccstt8Ruu+0W11xzTZx99tkxYcKE6NWrVzzxxBPRrVu3cq27oKAgmjRpEkuWLNHopszq1atj4sSJMX/+/GjZsmV07do1cnJyMl0WAJASNa2P21w9bU17H2obPS0AsCEV6eNSG9wuWrQoLrzwwnjqqadi9erV0bNnzxg1alQ0adIkJk+eHOeee27k5+dHixYt4rLLLovTTz+93OvW6AIA1Ew1rY/bXD1tTXsfAABYY4sIbjcnjS4AQM2kj1vD+wAAUDNVpI/L/s5XAQAAAACodoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDKCWwAAAACAlBHcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFKmTqYLAABIg9WrV8fEiRNj/vz50bJly+jatWvk5ORkuiwAACg3Pe2WpUYccdu/f//o1q1b6fPXXnstDjjggGjYsGG0bt06/vKXv2SuOACgxhs/fny0bds2DjvssBgwYEAcdthh0bZt2xg/fnymS2MLoZ8FADY3Pe2WJ/XB7W233RYPPfRQ6fPFixdHjx49ol+/frFkyZK49957Y8iQIfH8889nsEoAoKYaP3589O3bNzp06BBTpkyJwsLCmDJlSnTo0CH69u2r0WWT6WcBgM1NT7tlykqSJMl0ERsyc+bM6NWrVxx11FHxn//8JyZMmBC33357XHvttTFnzpzS+c4888xYuXJljBs3rlzrLSgoiCZNmsSSJUsiNzd3c5UPAKTc6tWro23bttGhQ4d47LHHIjv7f3/TLikpid69e8fMmTNjzpw5TjFLiZrWx+lnAYDNTU9bs1Skj0vtEbfLly+P/v37x5gxY2L77bcvnT5jxozYe++9y8y79957x8yZM6u7RACghps4cWLMmzcvLrroojINbkREdnZ2DB06NObOnRsTJ07MUIXUZPpZAKA66Gm3XKm9OdkvfvGLOProo+NHP/pRTJ48uXR6YWFhNGrUqMy8jRo1iqVLl25wXUVFRVFUVFT6vKCgICLW/NWhpKSkiisHAGqKTz75JCIivv/976+3J/j+979fOp+eIR1q0uegnwUAqoOetmapyGeQyuD23nvvjXfeeScmTZq0zmuNGzeOjz76qMy0ZcuWRePGjTe4vuHDh8ewYcPWmf7555/HypUrN71gAKBGatCgQUSsOUqhU6dO67z++uuvl8732WefVWttrF9hYWGmSygX/SwAUF30tDVLRfrZVF7j9sgjj4xXXnml9LobK1eujFWrVsXWW28d559/ftx7770xe/bs0vnPPPPMKCoqinvuuWe961vfEQqtWrWKxYsXuyYYANRiq1evjj322CPat28fjz766DrXAzvuuOPinXfeiXfffdf1wFKioKAgmjZtmvpru+pnAYDqoqetWSrSz6byiNtnn322zPMrrrgiJkyYEBMmTIhFixbFqFGj4pZbbomzzz47JkyYEPfff3888cQTG1xfvXr1ol69eutMz87OXufaHwBA7ZGdnR0jR46Mvn37Rp8+fWLo0KHRvn37mDlzZgwfPjyefPLJePjhh2OrrbbKdKn8fzWld9PPAgDVRU9bs1Skd6txXd52220XTz75ZIwdOzYaNWoUZ5xxRowePTq6deuW6dIAgBqoT58+8fDDD8eMGTOic+fOkZubG507d46ZM2fGww8/HH369Ml0iWxh9LMAQFXT026ZUnmphM2toKAgmjRpkvpT7ACA6rN69eqYOHFizJ8/P1q2bBldu3Z1KlkK6ePW8D4AAOujp02/ivRxqbxUAgBAdcvJyXHEIwAANZqedstS4y6VAAAAAACwpRPcAgAAAACkjOAWAAAAACBlBLcAAAAAACkjuAUAAAAASBnBLQAAAABAyghuAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMnUyXUAmJEkSEREFBQUZrgQAgIrQv62hnwUAqJnW9m9r+7nvUiuD28LCwoiIaNWqVYYrAQCAitPPAgDUbIWFhdGkSZPvnCcrKU+8u4UpKSmJTz/9NBo3bhxZWVmZLodvKSgoiFatWsVHH30Uubm5mS4HahxjCCrP+Em/ta1rbm5ure7j9LPp5+cJVJ7xA5vGGEq3JEmisLAwdtxxx8jO/u6r2NbKI26zs7Nj5513znQZbERubq4fMLAJjCGoPOOHtNPP1hx+nkDlGT+waYyh9NrYkbZruTkZAAAAAEDKCG4BAAAAAFJGcEvq1KtXLy6//PKoV69epkuBGskYgsozfoCq4ucJVJ7xA5vGGNpy1MqbkwEAAAAApJkjbsmYxx9/PPzdACrPGILKM34AAIC0E9ySEZMmTYqhQ4eWPj/qqKMiKyurzOOZZ57JYIWQbsYQVJ7xA1TUX/7ylxg8eHCsXr0606VAjWQMQeUZP7Wb4JaMGDNmTPzmN7+JrKys0mn33XdfJEkSSZLEgQcemMHqIP2MIag84weoqEGDBsX7778fV1111XfON2/evKhTp060aNFinUezZs2iW7du1VMwpIwxBJVn/NRugluq3YIFC+K1116LAQMGxJlnnhmvvvpquZd9//33Y9ttt4158+ZtvgIh5Sozhp599tk44IADokmTJrHLLrvEpZde6i+21EqVGT8PPfRQ7L333pGbmxt77LFH3HHHHdVQKZBJrVu3jq233rr0sc0228TkyZNj+PDhZaZvvfXWce+995ZZtm3btrFgwYJ1HhMmTMjMzkAGGENQecYP3yS4pdqNHDkyzj777Ljzzjvj/vvvj9133z0iIk477bTSHz6vvfbaOsv94x//iC5dusTixYuru2RIlYqOofz8/OjTp0/87ne/i8WLF8ezzz4b48aNi1GjRmVqFyBjKjp+pk+fHieddFLccMMNUVBQEE8++WRccskl8dxzz2VqF4BqMG/evFi6dGnMnTs3fvzjH8ecOXNi5cqVUVRUFGPGjImbbropli5dGkuXLo2TTjqpSrbZv3//yMnJiTfffLNK1geZVF1jaMKECZGVlVX6O7xRo0bRokWLOOuss2LlypVVuEdQfar7d9BTTz0VRxxxRDRp0iSaNGkS++23X4wZM6YK9oSqILilWhUUFMSf/vSnOP/882Pw4MFx3nnnRdOmTSMi4s477yz94bP//vuXWW7YsGExdOjQuO666zJRNqRGZcbQBx98EAMHDow+ffpEdnZ25OXlxXHHHRcvv/xypnYDMqIy46dDhw6xcOHCOPLIIyNJkli8eHGsWLEipk+fnqndAKpR8+bNo2vXrnHMMcdESUlJvPvuu3HRRRdF165dq3Q78+fPjyeeeCJ+9rOfxYgRI6p03ZBJ1TWG1v4OX7ZsWbz22mvxyiuvxNVXX12l24DqVh3jZ8SIEdG/f/8YMGBAzJs3L7788su44YYb4vLLL4/f/va3VbYdKq9OpgugdsnNzY3LLrssZs+eHc8++2xceOGF5VruzDPPjMsuuyw+/PDDzVwhpFtlxlDPnj2jZ8+epc+Liori2WefjX79+m3OUiF1KjN+srKyomnTprFixYpo0qRJFBcXR15eXvTv378aKgYyqUePHjFx4sSIiFi5cmXk5ubG119/HSUlJbHffvuVzjdmzJjSI57q1KkTS5cujZ133nm96/zhD3+43uljxoyJ7t27xwUXXBDt27ePa6+9Nlq1alXFewTVqzrH0De1atUqjj766Hj77berYC8gM6pj/Hz44Ydx0UUXxV/+8pc47bTTSqcfccQR8de//jXuu+++WLVqVdSpIzrMJO8+1a5///7RqVOnuPvuu6N+/frx+eefb3SZnXbaqRoqg5qhMmNorcLCwjjxxBMjJycnhgwZshmrhHSq7PipV69eLFu2LD788MO45pprYsGCBdGyZcvNXC2QSStWrIj7778/jjnmmHIvs/POO8fHH39cZlpJSUmUlJSUPv/2f4KLi4tjzJgxce+998buu+8eP/7xj+PGG2905C01XnWNoW9KkiRmz54dzz//vCNuqdGqY/w8++yzUVJSEgMGDFhnXT169IgePXpUsnqqkkslUK2Ki4ujT58+sfXWW8f1118fO+20Uzz22GMREXHKKadE/fr1o379+hW6YRnUJpsyhj744IPo0qVLfPXVV/HCCy9Eo0aNqrl6yKxNGT/Z2dmx1VZbRdu2baNHjx5x6qmnVnP1QNoNGzas9OfI2sfs2bNj0KBBsdVWW5V5zJo1q3S5hx56KHbYYYc4/PDDIyJiyJAhcdttt0VBQUGmdgUyorJjKCJim222iW222SYaNGgQeXl58fXXX5deDglqg8qMn88//zy22267qFu3boar57sIbqlWW221VRx//PFxxRVXxC233BLvvvtu7LXXXhERcffdd8fKlStj5cqVccABB2S4Ukinyo6hF154ITp16hQHH3xwTJgwIZo1a5aJ8iGjKjN+HnzwwTj44IPLrGfFihXrHM0AbHlWrlxZodNDi4uL46yzzoovvvgivvjii2jSpEnpUU6jRo2KJEkiSZLYYYcdyiw3evToePvttyMrKyuysrLi8MMPj4KCgrjtttuqdH+gulXXGIqI+Oqrr+Krr76KFStWxKeffhqdOnWKH/3oR25sTY1VHeOnZcuW8cUXX0RRUdE66yspKYkvvvhi03eETSa4pVolSRIdO3aMWbNmxWmnnRZdu3aNqVOnZrosqDEqM4amT58exxxzTFx11VVxyy23+IsqtVZlxs8Pf/jDmD59evzpT3+K1atXx4wZM+KKK66IE088sZqqBjKhuLg4Zs+eXeHLdW211Vald7fPysra6Pyvv/56vPnmm7F48eLS/1QnSRJ//OMf48Ybb4xVq1ZVdhcgo6prDH1bVlZWtGzZMoYMGRKFhYXx3nvvVXgdkGnVNX6OOuqoyMnJiQceeGCd1/7xj3/EjjvuGJ9++mmFaqDqucYt1SorKyueeuqp2GmnneLuu++O999/P4499tiIWHN9lW/e7KVHjx6xyy67xLx58zJULaRPZcbQwQcfHCtWrIjf/e538bvf/a709a5du8bTTz9d7fsAmVLZ30FPPvlk/Pa3v42LLrootttuuzj55JPjkksuydRuANXgz3/+czRv3jzat29fJesrKSlZbwg7evToOPbYY2ObbbYpM/3kk0+OCy+8MB588MH1XnsQ0q66xtD6fPXVV3HrrbfGDjvsUGXbh+pUXeNnxx13jEsvvTR+9atfRVZWVvTu3Tvq168fzz33XAwePDiGDBkSO+64Y5XUQOVlJUmSZLoIaq+SkpL4+uuvN/h6VlZW1KtXrxorgprFGILKM36A9Xnsscfi1FNPjaeffjo6d+5c7uUuueSSGDFiRNSvXz8iIgoKCuI///lPXHvttXHXXXeVmTc/Pz+22267aNWqVTz44IPRq1evddY3YMCAePfdd2PatGmbtkNQzaprDOXl5cWECRPisMMOK713Q5IkUbdu3TjooIPiuuuui7333rvqdgyqQXWOn7Xuvvvu+POf/xzvvPNORES0bds2/u///i9+9rOfVcEesakccUtGZWdnl/5gASrOGILKM36A9enRo0e8+uqrseeee1Z42TPOOCOGDRsWEVF6De2INdcX/NWvfhURES1atIiIiObNm8fKlSs3uK6//e1vFd4+pEF1jaGIiG7duoVj0diSVOf4WeuUU06JU045pXIFs9k54hYAAGATLVu2LFavXh25ubkREbF8+fJo0KBBpa7TCbWRMQSVZ/xsuQS3AAAAAAApk53pAgAAAAAAKEtwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAAAFJGcAsAAAAAkDL/D5ZtUS8pbvyWAAAAAElFTkSuQmCC",
            "text/plain": [
              "<Figure size 1400x600 with 2 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        }
      ],
      "source": [
        "# 示例 3：多组箱线图与标签\n",
        "np.random.seed(42)\n",
        "data1 = np.random.normal(100, 15, 100)\n",
        "data2 = np.random.normal(110, 15, 100)\n",
        "data3 = np.random.normal(105, 20, 100)\n",
        "\n",
        "fig, axes = plt.subplots(1, 2, figsize=(14, 6))\n",
        "\n",
        "# 无标签的多组箱线图\n",
        "axes[0].boxplot([data1, data2, data3], vert=True)\n",
        "axes[0].set_title('多组箱线图（无标签）', fontsize=12)\n",
        "axes[0].set_ylabel('数值', fontsize=10)\n",
        "axes[0].set_xticklabels(['组1', '组2', '组3'])  # 手动设置标签\n",
        "axes[0].grid(True, alpha=0.3, axis='y')\n",
        "\n",
        "# 使用 labels 参数\n",
        "axes[1].boxplot([data1, data2, data3], \n",
        "                labels=['产品A', '产品B', '产品C'], \n",
        "                vert=True)\n",
        "axes[1].set_title('多组箱线图（使用 labels 参数）', fontsize=12)\n",
        "axes[1].set_ylabel('数值', fontsize=10)\n",
        "axes[1].grid(True, alpha=0.3, axis='y')\n",
        "\n",
        "plt.tight_layout()\n",
        "plt.show()\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 第二部分：箱线图定制\n",
        "\n",
        "箱线图支持丰富的定制选项，可以控制缺口、填充、均值显示、异常值显示等。\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "### 2.1 notch 参数：显示置信区间缺口\n",
        "\n",
        "`notch` 参数用于在箱体上显示缺口，表示中位数的置信区间。如果两个箱线图的缺口不重叠，说明两组数据的中位数在统计上显著不同。\n",
        "\n",
        "**基本语法**：\n",
        "```python\n",
        "plt.boxplot(x, notch=True)  # 显示缺口\n",
        "plt.boxplot(x, notch=False)  # 不显示缺口（默认）\n",
        "```\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 5,
      "metadata": {},
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/1749982348.py:9: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  axes[0].boxplot([data1, data2], labels=['组1', '组2'], notch=False)\n",
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/1749982348.py:15: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  axes[1].boxplot([data1, data2], labels=['组1', '组2'], notch=True)\n"
          ]
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABW4AAAJOCAYAAAAnP56mAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAXppJREFUeJzt3Xm8jnX+P/D3OchOhFKJSsUUU0xa0KpVTUaUolFI/aaaZrQqLSqZFpPWaVFRmjbRvi8aiabUTGkoFa1k51jDuX5/9HWmM+fgHM4593V4Ph+P+3Hc1/K53vfd3eXtda77c2UlSZIEAAAAAACpkZ3pAgAAAAAAyE9wCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGUEtwAAAAAAKSO4BQAAAABIGcEtAAAAAEDKCG4BAAAANgOLFy+OJEkyXQZQQgS3AEX03nvvxYUXXrjO9TvuuGMMHz687AoCACBjevbsGV999VWh6wYMGBCHHHJI2RZEubb//vtHVlZWkR9Tp04tdJzLLrssunXrFpdeeul6999xxx1L5XV8/PHH0aNHj5g3b16pjA9bGsEtUKr+9Kc/FasBWfsoLADt1KnTBvd7+eWX11nL0KFDi3TsrbfeutD9X3vttXjnnXdK6J0pP/zGHgBIm6effnqDPV23bt3Wuf/ChQuL3Jc+/fTTBfb/7rvv4qGHHoqffvqpFF9l+ugLS9f5558fU6ZMiUceeSQiIv7973/HlClTolOnTtGpU6eYMmVKjBs3bp37J0kSTz/9dLRs2TIuuOCCmDJlyjofb7/9doH927VrV+x/t61evTrfGDvuuGN89dVXceCBB8b8+fNjxYoVZR4ew+akYqYLADZvl112WZx99tkFlv/000/RsWPHaNSoUTzwwAMF1jds2LDQ8bp37x4DBgwodN1ee+213lp69uwZRx999AZrrlChQoFlubm5MXLkyMjJyck3xjnnnBNHH310rFmzJiIiVq1aFStWrIiIiK222iqys/P/fmzRokUxc+bMDdYQEbHrrrtGpUqVirTt8ccfH8cff3z07du3SNsX1X333RdTpkyJv/71r0XafsaMGbHzzjvHgw8+GKeffvomH79Jkybx9ddfr3P9hAkTYv/99y/SWKeffnqMHTs2ZsyYscl1rdWtW7fYZ5994pJLLimxMQGAoqlWrVpMmjSp0HVXXHHFevetVatWTJkypUjHKSxceuihhyLi54sU1tp9991j6NCh8dNPP8WaNWsiNzc3ry+sUKFCoX3duq6a/F/16tWLevXqFWnbUaNGxV//+td49913i7R9UX366afRu3fvmDhxYpH3WXvV8dixYzfp2FdffXUMHDhwg9uVRbCc5v7vrbfeiu+//z7atWu3wSteV61aFVOnTo1mzZrlW37OOefEueeeG998803stNNOBfabM2dOVKhQIerWrRsRERUr5o+V6tatG6+88kr85je/idNOOy2ef/75Qv9fGzNmTNx5553FfYmwxRHcAqWqQYMG0aBBgwLL+/fvHzNnzoxXX321QLOwPo888kjeb6CLq06dOlGnTp2N2vehhx6Kb7/9Ni688MIYNGhQdOnSJZo1axbbbrttnHLKKfHUU09FRETfvn3zwtO33nqrwFfknnzyyTjzzDOLdMxp06ZF06ZNN7jdAw88EF9//XX07t27eC+qCAYNGpTxr/nts88+cddddxW6bkNhfWm78cYbo2XLlnHcccfFnnvumdFaAGBLs2zZsmjevPk615988snrXJednV2sHvSX5s2bF0OGDIlu3brFtGnTYsmSJdGtW7fYfvvt48UXX4zjjz8+b9uqVatGxM8XEPzvN8pWr1693vp/6fLLL4/rrrtug9vNmTMn/vCHP8Rzzz1X9BdURE8++WS89957JT5uUfTp0yffxRPXXnttvPjiizFhwoQyr6U0+79bb701br311rznv/71r/OtL+zq71+68847o1mzZjFhwoTo379/kY75v2F3vXr1okqVKtGpU6c4++yz46abbsp3Yct1110Xs2fPjldffbXAWMcdd1wccMABcfnll8eoUaPiu+++i6ysrEL/X1vXhTpAfoJboMy98sorcdNNN0WNGjWiefPmsWLFiqhSpUqR9t2UK2431urVq2Pw4MHRv3//GDBgQNxwww3RrVu36NSpU0RE/O1vf4ubb745DjjggPh//+//Rffu3dcbuDZu3Hi9V32uvWq1KJYvXx4DBgyI2267rdArhTcHtWrVKvJVtWVtp512is6dO8eVV16ZF94DAGVjU6643RR33XVXNGjQIB566KE477zzYtasWXH11VdHxM+92fTp02PIkCHx9ttvx7PPPht//vOf1zteYb/s/6Xi/BJ90KBB0aZNm9hvv/2KvE95sOOOO+a78rl+/foRERnpEUuj/3v77bejS5cu0aVLlwLrbr755vj1r38dRxxxRL7lzz//fL5AdNq0afHss8/GySefHJdeemlceumlG11PkyZN4pVXXokTTzwxPvvss3jiiSeievXqMW7cuHj00Udj/Pjxhe63ZMmSWL58eUT8HMxWqlSpwFXl1apVK/RKXqBw5rgFytR7770XJ554YjRu3DgiIl544YXYbrvt4oYbbsibbqA0nHvuucWer+mXhgwZEu3atYuJEydGkiTx+eefx8SJE2PixIlRuXLlaNKkSaxevTq22267vNdWFu6///5Ys2ZNnHDCCXnLTj/99Dj66KPjoYceit133z2qV68ebdq0iRdffDHfvt9880107949ttlmm6hatWrst99+8eyzz+atXztNwYgRIyIrKysvbP7ss8+iU6dOsfXWW0edOnWiY8eOMXny5Hxjz5o1K0455ZSoXbt21K5dO0466aSYNWtW3vr1ve9NmjQp9vuwcuXKuOqqq2KPPfaIatWqRZ06daJDhw7x0UcfrXOfjz76KDp06BC1a9eOunXrxpFHHhkffvhhvm3GjRsXBx98cFSvXj3q1q0bp512Wr7XERFx1llnxZgxY+Lzzz8vdt0AQNn74IMPNun+C127do3rrrsuJk2aFLNnz44FCxbk9YU//PBDNGnSJKpUqRI1atSIJk2aRPXq1cvkdc2dOzfuueeefFNnjR07NrKysmLcuHFx5JFHRrVq1WKXXXaJiy++ON/cpLm5uXHjjTfGbrvtFltttVU0btw4Lr300rypHn45VUFWVlZeUL1y5cq44oorYuedd46qVavGXnvtVeg0aEOGDImdd945qlSpEvvss0+89NJLeetOP/309b73xZ1m4eqrr46mTZvG4MGDo2bNmrHrrrvGvHnzokmTJgWm8ho+fHi+PjciM/3f8uXLY+HChQUeCxYsiB9//DFq1apV6PpfGjBgQL7/phdeeOEm9dzt27eP999/P6ZNmxYdOnSIWbNmRZ8+faJ3795FCszvuOOOaN68eYHHqaeeujFvEWyxXHELlJnRo0fHGWecESeddFK0bNkyrr766jj22GPjjjvuiPPPPz+ee+65eOqpp2Lbbbdd5xgbO1XCFVdcEeeee26B5Ycffnj07Nkzfv/7369z34ULF+b7yltE5JvTau1VEkuXLo2aNWsWu7ZN8fjjj8cxxxxTYM60f/7zn/H999/HddddFzVq1Ij+/ftH586d46uvvortt98+Zs2aFfvvv39UrVo1hg4dGttss008+OCDccIJJ8Tw4cOjZ8+eMWbMmDj22GOjVatWccUVV0TDhg3jhx9+iPbt28e2224bd999d9SuXTsGDhwYhx9+eL7w9vLLL48+ffrEqFGj4j//+U9cfPHFkZubG6NGjYqIWO/X2ipXrpzveZIkBW56EPHzXHFrA/Y+ffrEa6+9Ftdff33stttuMWPGjLj44oujc+fOMX369AL7LlmyJI488sg45JBDYtSoUfHTTz/FoEGD4sgjj4yvv/46qlevHuPHj4/DDz889ttvv/j73/8eq1evjr/85S/Rtm3b+PDDD6N27doREdGmTZuoW7duPPnkk3H55ZcX8b8cALCpNnaqhL322qvQOTfvuOOOeOONN2LMmDEF1v3ya90XXnhhvPDCC/nWH3DAARHx3ykRMtEXPvPMM5GbmxtHHXVUgXXdunWLc889Ny699NIYM2ZM3HTTTbHtttvGBRdcEBERvXv3jpEjR8Yll1wSBx98cHz00UcxcODA+OCDD+K1116LPn36xHfffRf3339/TJgwIe/q1169esXo0aPjqquuin333TdeffXV6N27d1SoUCF69uwZET8HoQsWLIgbb7wxqlatGpdddlmceOKJ8fXXX0f9+vXjiiuuKPSeGGv96le/KvZ78e2338Zjjz0Wjz/+eCxYsCC22WabIu2Xqf7vV7/6VVSvXj3at28fI0eOjNNOOy3f+rU99FovvfRSvqkj3nrrrXjqqadi3333zVt2ySWXRJ8+fdZ5zKLcS6Nx48YxduzYOOyww/IukLjxxhuL+rKibdu2+W7ufPXVV8frr79e5P2BiEgAStmCBQuSc845J8nKykouu+yyJDc3N7nllluS2rVr523z7bffJvvss0+y8847J1988cV6x/vss8+S1157LUmSJPnuu++SMWPGFKue8847L/nmm2+SJEmSxo0bJ7fcckuyevXqpH///sknn3xS6D4rV65MZs6cmSRJklSuXDkZM2ZMMn/+/OSHH35IHn300WTkyJFJRCQXXXRR8sgjjyQRkVxxxRXJ119/nW+c++67L2ncuPF665s+fXoSEcm0adPWu11OTk6SnZ2d3H777fmW9+zZM4mIfO/jyy+/nERE8tRTTyVJkiQXXnhhstVWWyVfffVVvn0PO+ywpEGDBsnq1avz3p+ePXvmrb/44ouTKlWqJLNmzcpb9v333yeNGzdOnn/++bzaO3funG/cU089Nalbt+56X09hGjdunEREoY+HH344SZIk+emnn5Ijjjgiefzxx/PtO2TIkCQikjlz5uS9L2vf+w8++CCJiOS9997L2/6LL75ILrroouTbb79NkiRJ2rdvn+y8887JsmXL8rZZsGBBUr9+/eTaa6/Nd6zjjz8+adeuXbFfHwCwaVauXJk8+eSTycKFC5MkSZIxY8Yk3333XZH3HzFiRF5/dNVVVyW//vWvkyRJkhdffDG59dZb17nf7Nmzk2XLliVnnXVWcsIJJyTLly9PZs+enbz++uvJo48+mrRt2zZp06ZN8uijjybt2rVLDjrooGTs2LH5xli1alUSEclbb7213hoPPvjg5PLLL9/gaznppJOS1q1b51v21ltvJRGRDBgwIG/ZmjVrku233z45/vjjkyRJkk8++SSJiGTQoEH59n3ooYeSiEieffbZJEl+fn9+GSH85z//SSIiGTp0aL79unbtmvTu3Tuv9ipVqiSzZ8/OW//qq6/mG3djrO13C7O2zjfeeCPf8v/ta5MkSR588MEkIpLp06cnSZK5/u/2229Pdt111yRJkuThhx9OatSokUyYMKHQR4UKFZKXXnopb99Vq1YlO++8c9KrV6+kZ8+eSffu3ZMk+fkzOmXKlHU+Cvs3V9u2bZOrrrqqwPInn3wyiYjk4IMPzvt3QmF++Vld+9/hfx9t27ZNkuTn936HHXbY6PcMthSmSgBK1cMPPxxNmzaNp556Kl588cUYNGhQgWkIIn6et2rs2LHRsGHD6NChQ/zwww9564YOHZrvatlnn302Lrzwwoj4+crNHj165K0bMWJE3m/3C/PSSy/F3/72twJXcC5dujQmTpwYBx54YKFzpb377rvRsGHDfPt17do1+vXrF5deemlcdNFFEfHzHFTnnXdeNG7cOB566KH497//vaG3aKN9//33kZubGzvssEOBdfXr149dd9017/naPy9ZsiQifp5H64ADDigwl+5pp50Ws2fPXuddlseNGxcHHnhgvquit99++5gxY0Z07Ngxb9mhhx6ab79dd901FixYkPd89erV63z875QZrVq1ivfff7/A49hjj42In68WePXVV+Okk06KOXPmxDvvvBP3339/3tQQS5cuLfA6mjVrFg0bNoxjjz02+vbtG0899VTUq1cvbrzxxthxxx1j+fLl8e6770aXLl2iUqVKebXVqFEj2rRpE2+++Wa+8Ro1ahRffvlloe8ZAFBypkyZEgcddFDeV9cXL14cXbt2zfuGTY8ePfK+2bNo0aLYe++94+uvvy50rOXLl8dVV10V//nPfwqs+/zzz+PPf/7zOq+m3HffffN9C2zUqFHRokWLuPvuu+PSSy+Nf/7zn/H+++9Hz54949tvv42vv/660CkEStI333xTaF8Y8d8rgiN+vjHbzjvvnNcX/uMf/4iIKPAV9lNOOSUqVKgQb7/9dqFjjhs3LiIiOnfunG/5E088EcOGDct7vueee+bNSRvx3750bW+Ym5u73t4w+Z+bZxXVb37zm2JtX9L935o1a/K9jtzc3CLXsmTJkjjggAMKffxvr1yxYsW46667ClwJe8MNNxQ6VcHax+GHH16kWr744os455xz4re//W18+OGHeVdpF0WrVq1iypQpeY9zzjmnyPsCPxPcAqVqxx13jFNOOSWmTp2a7+s8halVq1Y899xz0apVq1i1alXe8oMPPjgefPDBGDp06Hr3X716dVx77bX5blzwS0uWLIk//OEP0bdv3wKBZa1ateLll1+O/fbbL4499tiYOXNmkV7f2huNDR06NKpWrRq/+93vokuXLjFjxoyYMWNGgSkWStK8efMiIgr9Gl61atXyPa9Y8eeZcdY2jPPnz4/tttuuwH5rly1atKjQY86ZMycaNGiwwdpq1KiR73l2dna+prtSpUrrfPwycI74+fX95je/KfCoW7du3jbPPfdctGjRIho0aBDHHHNMDB8+PO81F9bsr725wvHHHx9PPvlkdOnSJbbddtvo1atXLFu2LObPnx9r1qyJm266qUB9L7zwQr5fLEREbL311nn/PQCA0tO0adPIysqKE044IX766af1bnvLLbfE/Pnz19kbDhgwIFauXBl//OMfC6w7//zz47777ovrr78+7r///iLX9+STT8YXX3wRVapUiVNPPTWqVKkSU6dOjRkzZsSIESOKPM7GmDdv3jqnZyisN/xlXxgRBXrDihUrRr169dbbF0bEBnvDwvrCiP/2pb169Vpvb7iu4HhDatWqVaztS7r/23XXXfON0atXryLXUqNGjZgwYUKhj8JuSHz00UcXmA7i5ptvjiRJ1vlY382S15o6dWoceuihsfvuu8cTTzwRI0aMiNtuuy0efPDBIr2OqlWrRrNmzfIe9erVK9J+wH+Z4xYoVYceemiBqy/Xp27dugXuzrrPPvvEXXfdFWeeeeZ6w9/rrrsu5s2bF/369St0/emnnx5JksTgwYMLXb/VVlvFmDFjonXr1nHaaacVa/6l559/Pg488MDo0qVLnHfeeXHLLbcUaJBL2trm7H9vTFAUderUKTScXtuQrqupqlOnTsyePbvA8jfffDOaNGmS14hvyPvvv7/Odf87x+2GTJ8+Pbp27RpdunSJ0aNH5/2D7qabbopXXnllnfvtuuuu8eCDD8awYcNi0qRJ8dBDD8Wdd94Zu+22W5x33nmRlZUVf/rTnwq9gcL/1piTk1PkudMAgI1XqVKleOqpp6J58+Zx7bXXxvnnn1/odp988kkMGTIkhg4dWmjQ9cwzz8TQoUNj9OjR6wz4evXqFV988UX88Y9/jHbt2sUee+xRpBr/8Y9/RE5OTlx99dXx7LPPxjPPPLPO+XZL0jbbbLPRfWFExMyZM/Nd3LBq1aqYO3fuevvCiIjZs2dHo0aN8pZPnTo15syZE+3bty/S8a+++upC70WxVlHf9w2pUKFCgatVc3Jy8v5cu3btEu3/nnvuuVi5cmXe8+KElmuvuN0Uhc2V+0snnnhigblzf+mZZ56Jnj17RosWLeKFF16IypUrx+9+97u48MIL489//nMcddRRsf3226+3huXLl8fUqVPzns+dO7f4LwS2cIJboFw47bTTYvDgwTFw4MBo3bp1gfWjRo2Ka665JkaOHFloA3XBBRfESy+9FO+88856f/teo0aN+Pvf/x777bdfPPzwwwWanU8//TSSJIlvvvkm7yv4X3zxRTz66KPx8MMPR6dOneL888+PoUOHxmWXXVboMb7++utCp4sorkaNGkXFihXj22+/Lfa+Bx10UNx+++3x5Zdf5rvC9e9//3tsu+22sdtuu0VEwStlDzrooLjjjjvixx9/zJsuYd68eXHMMcfEjTfeGCeccEKRjl/cr66tz4cffhgrV66MSy65JK/uJEnybhpS2NfSnnvuuTjjjDNi8uTJsd1220WbNm2iTZs28dBDD8WPP/4YNWrUiN/85jcxZcqUfLUmSRKnn3567LXXXtGiRYu85d9//33stNNOJfaaAIB1q1evXvzpT3+KQYMGFXqD2blz58ZFF10Ubdu2LfQqx/Hjx8dpp50Wl1xyyQZ7l2uuuSZee+21OOeccwr8Uv+HH36IBQsWRE5OTnz33Xf59jnqqKOiadOm0bNnzxg4cGB06dKl0AA5ouAUU4Vp167dBrfZZZdd8t0stqjWBqwjR46MK664Im/5Y489FmvWrMlbv/YX9EmSRFZWVhx00EER8fMNiH8ZoF9++eXx1VdfxUcffVSk4zdp0iSaNGlS7LqLq06dOgWumh0/fnzen0u6//vltsVVpUqVuPbaawtd98ubJG9IkyZNCr0p8DXXXFPoxRhrDR8+PM4444zo1q1bPPjgg1GlSpV8+z799NNxxRVXbPBq9A8//LDADQTbtm1b5PoBwS1QTmRnZ8ctt9wSVapUKXQO2latWsV9991X6G/Hc3JyYuzYsfH000/HPvvss8FjtW7dOs4666xCr1jYe++9IyLymtN99903unXrFi1atIiTTjopsrOzo3///nHZZZfFMcccU+jxtt9++3jjjTfWefzvv/8+OnTosME6q1WrFu3atYvx48fHn//85w1u/0v9+vWLRx55JDp06BADBw6M+vXrx8MPPxxvvPFGPPDAA3mN+dZbbx0ffvhhvP3227HvvvvGn//853jwwQfjqKOOigEDBkTVqlVj8ODBse2220b37t3z5korSy1btoyKFSvGxRdfHP369YulS5fGfffdl/cPl8LmuD3ggAMiOzs7OnfuHJdccknUqFEjHnnkkVi6dGnePG3XX399HH300XHSSSfF73//+6hYsWLcc8898fzzz8dLL72Ub7z33nsvevfuXfovFgCIiIhzzz03qlSpUug3nGrVqhV//vOf4/e//32hvyx/+eWX4+STT45BgwZt8DgVK1aM22+/PS699NJYvnx5VK1aNW/dVVddlffnN998M7bddtu44YYbYvz48fHuu+9GRMRFF10UI0aMiMsvvzz+8pe/FHqMESNGRJs2bdZZQ2HhdGGOPPLIeOyxx2LRokVRu3btIu0T8XMv1aNHj7jmmmtixYoVccghh8Qnn3wSV155ZRx66KFxzDHHRMTPfWFExKOPPhr7779/7LXXXnHSSSfFpZdeGqtWrYp99tkn3njjjRgzZkw8+uijRT5+WTnssMNiyJAhMXjw4GjTpk08++yzBaZhSEP/17p163WGthE/z13brFmzIo1VoUKFQqdHW983A+fOnRudO3eOq666Krp161bolArXX3997LDDDjF16tSoW7fuOqfLaNu2bbzzzjt5z6+++upifasRiHXchhGglN1yyy1J7dq1N7jduu5GuqFH5cqV842zZs2avD/PmTMn+eCDD5IPPvggqV27dnLbbbcVOG5ubm6+52vvyLtw4cIkJycnycnJSb744otk//33T+rXr593J9q1+x511FFJw4YNk3/961/5xrnvvvuSxo0br/c1T58+PYmIZNq0aRt8f+68886kTp06yfLly/OW9ezZs8Ax1o754IMP5i37+uuvk+7duyd169ZNKleunBxwwAHJc889l2+/xx9/PNluu+2SKlWqJOPHj0+SJEkmT56cHHvssUmNGjWSOnXqJJ07d86rtbDjJEnBuxAXVePGjZODDz54g9s9+eSTyZ577plUrlw5adKkSXLllVcmn332WRIRef99//d9+de//pV07NgxqVevXlK9evWkTZs2BV7/W2+9lRx88MFJtWrVklq1aiUHHXRQ8tprr+Xb5sMPP0wiIpk8eXKxXx8AUHRr+4yNeTz66KP5xvplrzdx4sRk8uTJyUknnZS0atWq0GP/b2/YuHHj5I477sjrCxcvXpwMGDAgycrKSu688858244cOTLJyspKbrjhhnzLV61alURE8tZbb633dR988MHJ5ZdfvqG3J5k7d25StWrV5PHHH89btraH/d9jHHzwwfl6rNWrVyc33nhj0rRp06RSpUrJTjvtlAwYMCBfjzlz5sxk3333TbbaaqvknHPOSZIkSVasWJFcdNFFyQ477JBUqVIl2XvvvfMd/3+PkyTr7heLo2fPnuvsLdfVdy5dujQ5++yzk7p16yY1atRITjnllOT5559PIiJfL5+J/u/222/fqM/1JZdckm+cnj17Jt27d0+SJEkefvjh9e574oknFqijbdu2xa7h/PPPz9v/l5/VnJycZN68efnGz8nJSebMmZPMmDEjGTJkSLLTTjuVyPsHm7OsJNnIWzQCbIKhQ4fG1VdfvcF5uObOnbtRcyFlZ2fH7rvvvs4xd9ppp1ixYkU0adIkXnzxxQ3+1nrFihUxa9asfF/juvfee+Pmm2+O5557rsDcW8uWLYvOnTtHnz59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cDt+/Pg48MADY/r06XnL3njjjfjDH/4Qd999dyxatCgefvjhuPLKK2PUqFEREfH222/HOeecE8OGDYucnJw444wzomPHjjFv3rxMvQwAALZgeloAAEpDxoLb4cOHx6mnnhqDBw/Ot/zrr7+O888/P9q1axdZWVmx//77x6GHHhr/+Mc/IiJi2LBhccopp8Rhhx0WFSpUiPPOOy/q168fY8aMycTLAABgC6anBQCgtFTM1IGPPvro6NGjR1SsmL+EXr165Xs+b968GD9+fNx8880REfHJJ59E7969823TokWLmDx5cukWDAAA/0NPCwBAaclYcLvddtttcJtZs2bFb3/722jZsmV07949IiJycnKievXq+barXr16LFmyZJ3jrFy5MlauXJn3fPHixRERkZubG7m5uRtTPhTZ2s+YzxuwOXKOo6yl7XNWVj2tfpZMc74HNmfOcZSl4nzGMhbcbsikSZPid7/7XbRq1SoeffTRyM7+eVaHmjVrxtKlS/Ntu3Tp0qhXr946xxo8eHAMHDiwwPI5c+bEihUrSrZw+B/z58/P+zl79uwMVwNQspzjKGs5OTmZLqFYSqqn1c+Sac73wObMOY6yVJx+NpXB7d///vfo06dP9O/fPwYMGBBZWVl56/bcc8/45JNP8m3/8ccfR8eOHdc5Xv/+/aNfv355zxcvXhyNGjWK+vXrR61atUr+BcAv1K1bN+9ngwYNMlwNQMlyjqOsValSJdMlFFlJ9rT6WTLN+R7YnDnHUZaK08+mLrh95ZVX4owzzojHH388OnXqVGB9r169olOnTtGrV69o3bp13HrrrTF//vzo3LnzOsesXLlyVK5cucDy7OzsvKseoLSs/Yz5vAGbI+c4ylp5+ZyVdE+rnyXTnO+BzZlzHGWpOJ+x1H0ar7322li9enX06NEjatSokfc4++yzIyLi8MMPjyFDhkS3bt2iVq1a8fjjj8dLL70UderUyXDlAADwMz0tAACbKhVX3CZJkvfnd955Z4Pb9+3bN/r27VuaJQEAQLHoaQEAKEmpu+IWAAAAAGBLJ7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUiYVNycDAErXtGnTIicnp8THnTJlSr6fpaFmzZqx2267ldr4AACk2z/+8Y+4//77S238efPmRUTElVdeGdtss02Jj/+73/0uOnXqVOLjsvkT3ALA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9OnTS3RMANgcFPm7KM2bN4+77rorzj///DjjjDNit912ixEjRpRmbVBm1l5pO3LkyGjevHmJjr18+fKYMWNGNGnSJKpWrVqiY0f8fCVvjx49SuVqYQDYnOhn2dxVrVo1unTpUipjL1u2LDp06BDNmjWLatWqlejY7777ruAWAApR7EmE9thjj3j77bdj3Lhxha7/8ccfY9ttt93kwiATmjdvHq1atSrxcdu2bVviYwIAG0c/C8VXrVq1UumTAYB1K9bdFypWrBjTp0+PSpUqxWGHHVZg/WWXXRZdu3YtseIAAKAk6WcBACgvinXFbW5ubhx55JHx448/xp577hnt2rWLU045JVq1ahUDBw6M++67LyZOnFhatQIAwCbRzwIAUF4UK7jNysqKadOmxYoVK+KTTz6Jl19+OTp37hzLli2LrbbaKiZOnBi77rpradUKAACbRD8LAEB5scHgdsiQIZEkSey0004RETF9+vSYPHlyfPTRRzFmzJioXLlynHjiifHwww/HmDFj4sILLyz1ogEAoKj0swAAlEcbDG6zs7Pjm2++iTfffDNq1qwZTZs2jXr16sUVV1wRjz76aDRr1iwiIvr27RsHHXRQNGvWLI477rhSLxwAAIpCPwsAQHm0weC2V69ekZ2dHfPmzYtx48bFtttuGzfccENcfvnlsXDhwhgwYEBE/Hx33mHDhsXZZ58dM2bMiIoVizULAwAAlAr9LAAA5VH2hjZ4+eWXo1WrVvHWW2/FfffdF59//nn86le/ivvuuy+6du0aFSpUiG+++SYiIhYtWhSDBg3S5AIAkBr6WQAAyqMNdqQnn3xyfPbZZ/Hpp59GkiQxbty4ePDBB6NatWoREZEkSfz617+OY445Jl599dV46623Sr1oAAAoKv0sAADl0QaD23333TeysrJi0aJFMWvWrFixYkUccsghMWjQoDjiiCMiKysrvvjii9h7773j0EMPjRYtWpRF3QAAUCT6WQAAyqMNBrd33313TJw4Mb7//vu49dZbo2fPntGiRYs48cQT875CNnXq1MjKyoqJEyfGp59+GnvuuWepFw4AAEWhnwUAoDza4By3q1atioEDB0aSJLH99tvHXXfdFUuWLIm5c+fGu+++G0mSxHHHHRennnpqXHzxxXHDDTeURd0AAFAk+lkAAMqjDV5xu2LFinjqqadi2bJl8c4778QTTzwRXbt2jY4dO8Yuu+wSERGff/55LFmyJKpXrx5XXnllrFmzJipUqFDqxQMAwIboZwEAKI82GNwecsghEfFzw7v33nvHtttum++GDdOnT4/69etH/fr1IyLivffe0+QCAJAa+lkAAMqjDQa3a1WpUiWqVKkSERGVKlXKW964ceN82+2+++4lVBoAAJQc/SwAAOXJBue4BQAAAACgbAluAQAAAABSRnALAAAAAJAyglsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUibjwe3cuXNjl112ibFjx+Yte//996NNmzZRrVq1aNKkSdx777359hkxYkTssssuUa1atWjVqlWMHz++jKsGAID/0tMCAFDSMhrcjh8/Pg488MCYPn163rIFCxbEMcccE926dYtFixbFI488Ev369Ys33ngjIiLefvvtOOecc2LYsGGRk5MTZ5xxRnTs2DHmzZuXqZcBAMAWTE8LAEBpyFhwO3z48Dj11FNj8ODB+ZaPHj066tSpE/369YtKlSpF27Zto1u3bvHggw9GRMSwYcPilFNOicMOOywqVKgQ5513XtSvXz/GjBmTiZcBAMAWTE9LWtSuXTvmzp0b48aNy3QpxbJ48eJ48803o3bt2pkuBQBSJ2PB7dFHHx1ffvllnHjiifmWf/LJJ9GyZct8y1q2bBmTJ09e5/oWLVrkrQcAgLKipyUt+vbtG+3bt4/jjjsuPvroo0yXUyTLly+P448/Pr7++uv429/+lulyACB1KmbqwNttt12hy3NycqJ69er5llWvXj2WLFlSpPWFWblyZaxcuTLv+eLFiyMiIjc3N3JzczeqfjYvaz8H5fEzUZ5rB8pGeT5PlOfaKR1p+xyUVU+rn2VDttpqqxgzZkwcccQRcdRRR8Xbb78de+yxR6bLWqdVq1ZFly5d4oMPPohXXnklWrRo4bMMrFOSJBGRvj6gKJIkiSRJymXtlI7ifBYyFtyuS82aNePbb7/Nt2zp0qVRs2bNvPVLly4tsL5evXrrHHPw4MExcODAAsvnzJkTK1asKIGqKe/mz5+f93P27NkZrqZ4ynPtQNkoz+eJ8lw7pSMnJyfTJRRJSfe0+lmKavjw4fG73/0uOnToEM8880zsuOOOmS6pgNzc3Dj33HPjtddeixEjRkTTpk2d44H1Wr58eaxatapcnitWrlwZP/30U7msndJRnH42dcHtnnvuGS+++GK+ZR9//HHstddeees/+eSTAus7duy4zjH79+8f/fr1y3u+ePHiaNSoUdSvXz9q1apVgtVTXtWtWzfvZ4MGDTJcTfGU59qBslGezxPluXZKR5UqVTJdQpGUdE+rn6WoGjRoEK+//nocdNBB0b1793j77bdTdf5MkiTOPffceOaZZ+LRRx+NLl26ZLokoByoWrVqVKpUKVXns6KqXLlyrFq1qlzWTukoTj+buuC2c+fOcdFFF8Vdd90VZ599dowdOzYee+yxeP755yMiolevXtGpU6fo1atXtG7dOm699daYP39+dO7ceZ1jVq5cOSpXrlxgeXZ2dmRnZ2yaX1Jk7eegPH4mynPtQNkoz+eJ8lw7paO8fA5KuqfVz1IcjRo1itdffz3atWsXxx57bLz11lupufnXgAED4u67745hw4bFSSedlOlygHIiKysrIspPH/BLWVlZkZWVVS5rp3QU57OQuk/NNttsEy+88EIMGzYsqlevHr17947bb789DjnkkIiIOPzww2PIkCHRrVu3qFWrVjz++OPx0ksvRZ06dTJbOAAA/B89LZm26667xiuvvBLTp0+P448/PpYtW5bpkmLIkCExaNCguOmmm6J3796ZLgcAUi8VV9yunWR6rbZt28aHH364zu379u0bffv2Le2yAACgyPS0pE3Lli3jxRdfjA4dOkTXrl1jzJgxsdVWW2Wklvvvvz8uvPDCuOyyy+LCCy/MSA0AUN6k7opbAAAASsYBBxwQTz/9dLz++uvRs2fPWLNmTZnXMGrUqOjbt2/84Q9/iOuuu67Mjw8A5ZXgFgAAYDN2xBFHxKOPPhpPPPFEnHPOOQWuDi9Nr7zySpx66qnRrVu3uP322/PmqQQANkxwCwAAsJnr3Llz3HfffXHPPffE5ZdfXibHfPfdd6Nz585x5JFHxvDhw92YBwCKKRVz3AIAAFC6evXqFQsXLowLLrgg6tSpExdddFGpHevjjz+Ojh07xm9+85t48skno1KlSqV2LADYXAlu4f9sVyMrqi78POKH8nUlQNWFn8d2NXzlDACADevXr18sWLAgLr744titYa3odNh+JX6MefPnR49Op8Quu+wSzz33XFStWrXEjwEAWwLBLfyfs1pvFc3/cVbEPzJdSfE0j59rB1iXZcuWRUSs9+72G2v58uUxY8aMaNKkSan8w3zKlCklPibAlq5OnToREbHT7Ncj7r24xMffJiJO3T3ixWXVXWkLlIj77rsvIiKOO+64Uhl/zZo1sWTJkqhRo0ZUqFChRMf+4IMPYu+99y7RMdlyCG7h/9wz6ac4+crh0bxZs0yXUixTpk6Ne4acGr/NdCFAak2dOjUiIs4888wMV7LxatasmekSADYLDzzwQFxwwQXRv3//aHXmHyNyZpXKcToc8l1c2/Hk6Nq1a4wZM0aAC2ySPffcMz799NOoWLF0YqwlS5bEO++8EwcffHBsvfXWJTr2/vvvH127di3RMdlyCG7h/8xaksTyrXeP2H7vTJdSLMtn5casJWV3Z2Cg/OnUqVNERDRr1iyqVatWomNPmTIlevToESNHjozmzZuX6Nhr1axZM3bbbbdSGRtgSzJq1Kg488wz4//9v/8XgwYNisjKiqi5Xakc6zfb7x1PP/10dOzYMXr27BkPP/xwiV/FBmw5Jk+eXKrjf/jhh9G6dev461//Gq1atSrVY0FxCG4BYDNXr1696NOnT6keo3nz5ppcgBR77bXX4tRTT42TTz457rjjjsjKKv17JBxxxBHx97//PU4++eTYeuut48477yyT4wLA5qJ83YUJAACAYpkwYUJ06tQpjjjiiBgxYkRkZ5fdPwO7dOkS9957b/ztb3+LAQMGlNlxAWBz4IpbAACAzdTHH38cxx57bLRu3TqefPLJjMw127t371i4cGFceOGFUadOnbjwwgvLvAYAKI8EtwAAAJuhL774Io488sjYZZdd4rnnnivxec6L44ILLogFCxbERRddFFtvvXWpT+EDAJsDwS0AAMBm5vvvv48OHTrE1ltvHS+//HLUrl070yXFtddeGwsXLoy+fftG7dq13WUdADZAcAsAALAZmTt3bhxxxBGRm5sbr732WtSvXz/TJUVERFZWVtx2222xYMGC6N69e9SqVSuOOuqoTJcFAKnl5mQAAACbiZycnDj22GNj7ty58frrr0ejRo0yXVI+2dnZMXz48DjqqKOic+fO8e6772a6JABILcEtAADAZmDFihVxwgknxGeffRavvPJK7L777pkuqVCVKlWKJ554Ivbdd9849thj49///nemSwKAVBLcAgAAlHOrVq2Kk08+OSZOnBgvvPBC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OMojwS1solmzZsX7778fp556avTp0yf++c9/FnnfL7/8MurWrRszZswovQIBNsHGnONeeeWVaNOmTdSuXTsaN24cV1xxRaxZs6YMqgVgY+lpgc2ZnpbySnALm2jIkCFx9tlnx/Dhw+Oxxx6L3XbbLSIiTj/99KhRo0bUqFEj3n///QL7Pfvss9G2bdtYsGBBWZcMUGTFPcdNmTIlOnfuHJdeemksWLAgXnnllRg5cmTccsstmXoJABSBnhbYnOlpKa8qZroAKM8WL14cd9xxR6xYsSIiIvr37x916tSJiIjhw4dHt27dIiJi//33z7ffwIED44knnogbbrghTj/99DKtGaCoNuYc99VXX0WPHj2ic+fOERHRrFmz+N3vfhf/+Mc/4sILLyzjVwBAUehpgc2ZnpbyzBW3sAlq1aoVV155ZZx++unRsGHDuOSSS4q0X58+fWLy5Mlx8MEHl3KFABtvY85xHTt2jHvuuSfv+cqVK+OVV16JfffdtzRLBWAT6GmBzZmelvLMFbewiU455ZRo3bp1PPTQQ1GlSpWYM2fOBvfZYYcdyqAygE23Mee4tXJycuLkk0+OChUqRL9+/UqxSgA2lZ4W2JzpaSmvXHELm2DVqlXRuXPnqFGjRtx4442xww47xNNPPx0REb///e+jSpUqUaVKlWLd3AEgLTblHPfVV19F27ZtY+HChfHmm29G9erVy7h6AIpKTwtszvS0lGeCW9gElSpVihNPPDGuvvrquOuuu+Kzzz6LPffcMyIiHnrooVixYkWsWLEi2rRpk+FKAYpvY89xb775ZrRu3TratWsXY8eOjXr16mWifACKSE8LbM70tJRnglvYBEmSRKtWrWLq1Klx+umnR/v27WPixImZLgugRGzMOe7jjz+O4447Lq699tq46667YquttiqjagHYWHpaYHOmp6U8y0qSJMl0EVCenXfeebHDDjvECSecEF9++WUcf/zx69y2cePGMWPGjLznM2bMiJ133jmmT58eTZo0Kf1iAYqpuOe4du3axSOPPFLga2Tt27ePl156qbTLBWAj6WmBzZmelvJKcAslKDc3N3766ad1rs/KyorKlSuXYUUAJcc5DmDL4HwPbM6c4yhPBLcAAAAAACljjlsAAAAAgJQR3AIAAAAApIzgFgAAAAAgZQS3AAAAAAApI7gFAAAAAEgZwS0AAAAAQMoIbgEAAAAAUkZwCwAAAACQMoJbAAAAAICUEdwCAAAAAKSM4BYAAAAAIGX+PzaYdVFoc2h6AAAAAElFTkSuQmCC",
            "text/plain": [
              "<Figure size 1400x600 with 2 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        },
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "注意：如果两个箱线图的缺口不重叠，说明两组数据的中位数在统计上显著不同。\n"
          ]
        }
      ],
      "source": [
        "# 示例 4：notch 参数对比\n",
        "np.random.seed(42)\n",
        "data1 = np.random.normal(100, 15, 100)\n",
        "data2 = np.random.normal(110, 15, 100)\n",
        "\n",
        "fig, axes = plt.subplots(1, 2, figsize=(14, 6))\n",
        "\n",
        "# 不显示缺口\n",
        "axes[0].boxplot([data1, data2], labels=['组1', '组2'], notch=False)\n",
        "axes[0].set_title('不显示缺口 (notch=False)', fontsize=12)\n",
        "axes[0].set_ylabel('数值', fontsize=10)\n",
        "axes[0].grid(True, alpha=0.3, axis='y')\n",
        "\n",
        "# 显示缺口\n",
        "axes[1].boxplot([data1, data2], labels=['组1', '组2'], notch=True)\n",
        "axes[1].set_title('显示缺口 (notch=True) - 置信区间', fontsize=12)\n",
        "axes[1].set_ylabel('数值', fontsize=10)\n",
        "axes[1].grid(True, alpha=0.3, axis='y')\n",
        "\n",
        "plt.tight_layout()\n",
        "plt.show()\n",
        "\n",
        "# 说明：如果两个箱线图的缺口不重叠，说明中位数差异显著\n",
        "print(\"注意：如果两个箱线图的缺口不重叠，说明两组数据的中位数在统计上显著不同。\")\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "### 2.2 patch_artist 参数：填充箱体\n",
        "\n",
        "`patch_artist` 参数控制是否填充箱体。当设置为 `True` 时，箱体可以被填充颜色，便于美化图表。\n",
        "\n",
        "**基本语法**：\n",
        "```python\n",
        "plt.boxplot(x, patch_artist=True)  # 填充箱体\n",
        "plt.boxplot(x, patch_artist=False)  # 不填充（默认）\n",
        "```\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 6,
      "metadata": {},
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/3249118952.py:10: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  axes[0].boxplot([data1, data2, data3],\n",
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/3249118952.py:18: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp = axes[1].boxplot([data1, data2, data3],\n"
          ]
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABW4AAAJOCAYAAAAnP56mAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAbGdJREFUeJzt3Xl4VeW5P+4nYUhIIIgQBpWCiAoV1EJrFcSvSFsHrKVIKyCtioqeUqt1qMU6UY9iq7bHWq1WjjNqFXGsVo9WFBFqi/UAHnAEtQqKoCSMYvL+/uBHagQEQsheIfd9XbnCftf0rL2zdh4+WXutvJRSCgAAAAAAMiM/1wUAAAAAAFCd4BYAAAAAIGMEtwAAAAAAGSO4BQAAAADIGMEtAAAAAEDGCG4BAAAAADJGcAsAAAAAkDGCWwAAAACAjBHcAgAAAABkjOAWqBMvvfRS5OXlxccff7xFy3388ceRl5cX//jHPzZ7mcsvvzwef/zx9cbvv//+OOaYYzZrHWvWrImvf/3r8dZbb1Ub32GHHWLixImbXQsAAPXTvvvuG//1X/+1xcsNGjQofvzjH2/2/NOnT48xY8asN75mzZrYf//9Y9asWZu1njPPPDNuvvnmamNnnHFGHHnkkZtdCwDZIrgF4owzzoi8vLwt/rrllluqrWfixImxww47RETE5MmTq837la98JSIiWrVqVW389ddfr9V9KSsri3HjxsXUqVNj4cKFVV9lZWVx6623xty5c2P69OnVvt5888311vP888/HCy+8UKu1bUsppVyXsMVqo+b6uN8AQHY0b948HnjggYiI6Ny5c7U+9X//93/jpz/9abWx888/v9ZruP7662PSpEnVetf3338//vznP8ff/va3eOWVV6r1rn/72982uJ77778/3n777Vqvb1uorz3c1tZdX/cbyJ3GuS4AyL3zzjsvTj311PXGP/nkkxg4cGB07NgxbrrppvWmd+jQYaPr3G+//WLOnDlVj+fOnRvf/e5344UXXogWLVpUjXfq1KnaPJ9XXl4eERFvvfVWNG/efL3pe+65Z+Tl5VU9vvzyy6OsrCwuueSSuOSSS6rG+/TpE9OmTYuUUhxwwAHV1nHiiSfG+PHjq409/vjjscsuu1Srb2t9+9vfjm9/+9sxatSoWltnRMQll1wSBQUF8bOf/Wyz5p88eXL0798/nn766Tj44INrtZbN9fLLL8eJJ54Y06dPrxrLy8uLiy66KC6++OLNWseNN94Yc+bMid/85jdbtO2LL744xo4du9Hpp5xySlx//fWbta5t8Vw+/vjjce6558YLL7wQTZs2rZV1AgCb9tRTT8WaNWuqHn/3u9+N7373u/HDH/6waqxNmzZV/16wYEEsXbp0vfUsW7YsPv744w32tu3bt6860SEi4v/+7/9iwoQJ8emnn1brrZs2bRr77LNPRER873vfq7aORo0axaefflpt7NVXX4358+fHgQceuJl7u2kTJ06M3/zmN/H888/X2jojIp577rm49NJL47HHHtvsZTp37hwHH3zweieO1JXVq1fHueeeG1/96ldjxIgRERFx/PHHx+TJk2P+/PmbtY4N9b+bMn/+/Nh11103Od/NN98cxx9//Gavtyb0qJAbglsg2rZtG23btl1vfMyYMbFgwYJ44oknolu3blu0zqKiothll12qhbQRawPdiLWB6+eb2e7du290fUOGDNngeHl5eVWg+9e//jV+/etfx89+9rM45phjYsCAAXHOOedE//79Y8iQIXH44YfHww8/HCeeeGJMnTo1Zs6cGYWFheuts6KiIu64447o27fvejVWVlbGe++9V228SZMmsdtuu33BsxFx0003xVtvvRUnnnjiF85XExdeeGFcdNFFtb7ebenee+9d72yRadOmxS677LLZ67j00ku3KiydNGnSBv/40K5duxqvszYceuih8bvf/S5++ctfxn/+53/mtBYAaEh22223GDJkSNx3331VY+PGjYtx48ZFxNpe5bM98ZgxY+LWW2/d6PomTJiw3tg111xTdRmF8vLyGDp0aOy2227x8MMPx89//vN48803Y9KkSfHzn/88/vKXv8Rrr70Wb731Vhx++OHx6KOPxje+8Y0NbuuWW26J5s2bR2lpabU+9aOPPorly5ev19N+6UtfiqKioo3WvmjRovjRj34UDz/88Ebnqanx48dXO8GjPliwYEFcffXV1S5FccEFF8Tpp5++2evYUP+7KR06dIhp06ZVPX7xxRdj9OjRcf7558fAgQOrxjf1f5HaoEeF3BDcAhv0+OOPxxVXXBHNmzeP7t27x6pVqzYYckZELF26NP7whz/E7NmzY/Xq1XH55ZdHjx49qkK1iRMnVjtz9cEHH4x77713vfV8/qNDP//5z2PChAnx0ksvRevWreOTTz6JRo0aRaNGjdZb9uOPP45hw4bFUUcdFZdddlkMGzYs9txzz1i0aFEsXLgw9t9//7j11lsjPz8/fvOb38Tpp58e77///gbPqH3sscfinXfeieLi4g2GyZ9v0Dp16vSFf2lfuXJlnH/++fG73/1ug7Wz1v7771+n2/vKV74SnTt3rtNtbq5zzz03DjvssPjJT36ywT+qAABb584774y333471qxZE5MmTYq5c+fGueeeGxERxx13XLVr1FZUVGywT7nllluqnQE6a9as+OpXvxq33XZb1X0VVqxYsdGA9KyzzoqFCxfGlClT4tlnn42KioooLy+PZcuWxcqVK+ORRx6Jrl27RteuXWPMmDFRVla2wfV8+umncfPNN8dRRx0V++23X6xevXq9eT7f027q00KXXnpp7LfffvH1r399o/M0dHURlhYUFFT72Vu1alXVtuu6d47Qo0JOJIDPmT59eiouLk5dunRJLVu2TI888khq2bJluvzyy9Onn3663vzvvPNO6tSpUyotLU15eXmpU6dO6Ywzzkjl5eUpIjb4teeee35hDU8//XQqLCxMU6dOTSmlVFlZmY466qjUvXv39MILL2xwmXnz5qVVq1allFJq165duvXWW6umderUaYN1HHvssdXWUVlZmfbbb78UEWnFihVV4xMmTEgRkfLz89Nuu+2WDjvssM17MlNK11xzTWrbtm365JNPqsaOO+64dOihh6bf//73aeedd06FhYXpoIMOSv/85z+rLTt16tR0+OGHp9LS0lRQUJA6d+6cLrzwwqrX4fP7s8706dPTIYcckpo3b57atGmThg4dmt5+++2q5zYi0g033JCOOOKIVFRUlFq3bp1OPvnkVF5evtn7lVJKjzzySDrooIPSjjvumAoLC9Oee+6Zfve731VNX7et8ePHpw4dOqTWrVunfv36Vav5oosuqtqXdf9OKaVrr7027bnnnqmwsDDtsssu6Sc/+UnVa/L513PevHnpuOOO2+jPW0Skp59+OqWU0kUXXVS1TG3t37p1L1++PP3kJz+pek27deuWfv/731db54cffphOPvnk1K5du1RYWJi+/vWvp0cffXS9bXfv3j2dd955m/EqAABb6phjjkmdOnVKeXl5qbS0NHXq1Cl9+umn6eijj95oLzFt2rSNrm/58uWpZ8+e6Uc/+lHV2L333puaN2+efv3rX6fKysr1llm9enV68803U0opnXvuuWnAgAGpoqIipfTvfmVDX2vWrKm2nmuuuSZFRLruuuuqrbt58+ZVvWteXl5asGDBZj03ixYtSoWFhenBBx+sGlvX8/zP//xP2n///VNBQUHaddddq/VFKaW0ZMmSdPrpp6ddd901FRQUpNatW6ejjjqqqu/6fL928803p5RS+vjjj9Po0aNThw4dUlFRUfrqV79abfudOnVKw4cPTz//+c9Thw4dUmFhYerTp0/629/+tln7tM7bb7+dRo4cmXbZZZfUtGnT1LZt2zRixIj04YcfVtvWmWeemfr375+aNWuWDj/88Go1d+rUqWpf1v07pZRefPHFNGDAgFRSUpJatWqVvvnNb6YZM2aklNZ/PS+66KKq53RjX8cdd9x69a9bZt3z9lnz5s1LEZGuvvrq1LVr11RSUpJuv/32qm1/3ud7bz0qZJPgFqjmvvvuSyUlJemEE05Iv/3tb1PLli1TZWVluv3229OOO+6Y+vbtmxYuXLjBZe+9997UsmXLqsfrgtuHHnoozZo1q+pr7NixXxjcvvXWW6m0tDRdeOGFaeHChWn+/Plpzpw5afr06al///6padOm6f77719vuQkTJqTRo0en0aNHp6KiovTNb34zjR49Ol144YWpU6dO6ZJLLklz5syp+ho0aNB6we3NN99c1SytXLmyanzIkCFp3333TS1btkxnnHFGKiwsTEuXLt2s5/TAAw9cr/E67rjjUqtWrVL79u3TrbfemiZNmpT23XfftMMOO6RFixallFKaNWtWatasWTr22GPT448/np566qmqZnddszZt2rQUEenEE0+s+s/E//7v/6bCwsL0//7f/0v33XdfmjRpUtpjjz3SHnvskVavXl3V8DVt2jT9/Oc/T08++WS6+OKLU0Sks846a7P2KaWUnnjiiZSfn5/OOOOM9NRTT6XHH388HXHEEdWCzHXbKi0tTRMmTEi33357mj9/fjrxxBOr/gP0zjvvpJSqN4933313KigoSL/97W/TM888k2644YbUvHnzdMopp6SU1jbG7du3T0cccUSaNm1aWrVqVXr99dfTtGnTNvq17vVa17y+/vrrac2aNdW+1v1naUv3b93jU089NXXq1Cndeeed6emnn07nnntuioh01113pZTW/ifqK1/5SmrVqlW65ppr0hNPPJF+/OMfp/z8/PTQQw9Ve35/+tOfpt13332zXw8AYMsVFxdX6yuPPvrodOKJJ1brXV966aVNBrfHHHNM2muvvdK//vWv9M4776RXX301zZw5M/3nf/5natSoURo2bNh6J0C88cYbVb1rr1690i677FL1ePjw4alXr17Vetdbb711veB28eLFaccdd0wRkf7whz9UjT/yyCMpItLBBx+cBg4cmLp27ZpuuOGGzXpOxo8fn5o2bVp1QkRK/+55dtxxx3T22Wenv/zlL+lHP/pR1R/o1+nXr1/aY4890p133pmeffbZdO2116YWLVqk//f//l9KKaXXX389HXHEEal9+/Zp2rRp6YMPPkgVFRWpX79+qVWrVun3v/99evLJJ9Pxxx+f8vPz01NPPZVSWhum5ufnp4MOOig99NBD6U9/+lPq2LFjateu3XpB9sasXr067bbbbmm//fZL9913X3r22WfTZZddlpo0aVKtV+/UqVNq2rRp+vGPf5wef/zxNHny5DRp0qQUEen8889PL774YkqpenBbXl6e2rRpk4YMGZKeeOKJ9Mgjj6QDDjggtW7dOi1btiy988476/W/S5cu/cLe9fXXX19vHzYnuG3evHm69tpr03333ZfmzZu3WcGtHhWyS3ALpJRS+uijj9Lo0aNTXl5eOu+881JlZWVVcLvOO++8k77yla+kXXfddYONxMaC28094/Yf//hHKiwsTI0aNVpv/vz8/FRcXJx69OiR9t1339SkSZOqsGydU089NRUUFKSCgoIUEalJkyapoKAg7bHHHpsV3M6aNSuVlJSkPffcs1pwu3DhwlRQUJCuuOKK1LJly3TPPfekzp07p2uvvXaTz2t5eXnKz89P11xzTbXxdQHsZ/8DsHDhwlRYWJh+/vOfp5RSuv3229Ohhx5a7QyNTz/9NLVq1SqNHj26auzzfy3//ve/n9q3b1+t2f7b3/6WOnfunF588cWqhu/MM8+sVlOfPn1Sr169NrlP61xxxRXphz/8YbWxxYsXp4hIV1xxRUrp383lBRdcUG2+DTWQn92PH//4x+nLX/5ytX2/4447qp3V0alTpw2eibApX3QGy4ABA2q0f+t+Fnv06JH+4z/+o9oyv/zlL9MjjzySUkrpv//7v1NEpL/85S/V5jnppJPSbrvtVm3svvvuqwqYAYBtY0PB7ZaccdurV6/UpEmTDfauEZF233331Lt371RSUpJOPvnkastOnTq1qndt1KhRys/Pr3rcv3//TQa3a9asSd/61rdS27ZtU6tWraoFt9/5znfSXnvtlU4//fQ0cODAdOGFF6avfe1rm/WcfP/730+9e/euNrau5zn11FOrjQ8aNCjtvPPOqaKiIi1cuDD169cvPffcc9XmOe2001JxcXHV48+fqfroo4+miEgPPPBA1VhlZWXq27dvVW/YqVOntNNOO1Xrb//4xz+miEgzZ87crP2aOXNm2n///avOcl7n29/+dtprr72qHnfq1Cl96UtfqtaHrgtFPxuYfnY//vGPf6SIqHYG8Ouvv57OOeecqpMUNhagbonNCW5/8IMfVBvfnOBWjwrZ5Rq3QNx+++3x05/+NJo0aRKPPvpoHHbYYRucb5dddonJkyfH4YcfHt/4xjdi6tSpsdNOO21y/XfffXe1a8k+9NBDMWnSpPXm69WrVzz11FNRXFwczZs3j7PPPjtWrVoVjzzySJx44onx4YcfxiOPPBIRESNGjIhp06ZVuzbXH/7wh/jDH/4QM2fOjH322Sd+9KMfxeWXXx6FhYXRuXPnuOCCC+KCCy6ots1jjz226t933nln7L333nHeeefFEUccUTV+8cUXxw477BD/8R//Ef/5n/8ZeXl58R//8R8xbty4GDFiRJSUlGx03999992orKyMnXfeeb1pe+65Z7VrU7Vr1y769u1bddOCESNGxIgRI2LNmjXx2muvxeuvvx4vvfRSrF69OpYvX77RbU6ZMiWOOOKIKCgoqBrbb7/9Yt68eRERMXny5IiI6N+/f7Xldtttt3juuec2ut7PO/vssyNi7V12X3nllXjttddixowZERHr1ffVr351s9cbEXHIIYfE73//++jVq1cMGjQoDj300Bg2bFjk5+dvdJnKysqorKzc6PRGjRpFXl5e1eOHHnpovZuTffa13JL9+3zdb775ZgwcODAOPfTQaj9zTz75ZLRr1y4GDBhQ7W7Q3/rWt2L8+PHx9ttvx5e+9KWIiOjYsWNERLzxxht1cg01AGCtH/zgB/GjH/2o6nFFRUUceOCBG5z3zjvvjGXLlkXz5s3jH//4R4wYMSLefffdePXVV6N///7x/PPPR5s2beLxxx+Piy66KMrLy6tu3tunT5+qa5b27t07Ukpxxx13xJe//OW4+OKLY+zYsV94894XX3wxXn755XjwwQdj6NChVePTp0+Phx56KO69996YMmVKRESMGjUqxo0bF5MmTYrBgwd/4f6//fbbG+xdI9Ze//ezjj766HjggQfiX//6V3zpS1+KZ599NiIi3nvvvXjllVdi7ty58fzzz2+yd23SpEl8+9vfrhrLy8tbry894IADqvW36/qjjz766Av3Z52ePXvGtGnTIqUUb731Vrz66qvxf//3fzFnzpxqfVnE2tfjs33jpnTr1i06dOgQRxxxRAwePDgOPfTQ+MY3vhG//vWvN7pMSikqKio2Oj0/P/8Le9+N2dK+O0KPClm25e8CwHZnl112iWHDhsXcuXM3GtquU1JSEg8//HD06tUr1qxZs9H5PnuzrqFDh8YBBxxQ9bXuzryfl5eXF3369Il99tkndtttt1iyZEm0a9dugzf0uv3222PMmDHrjVdUVMTo0aMjIuIvf/lLfP3rX4933nknIiJuvPHGSGs/aRAppfUaz8suuywmT54czZo1qxq777774vrrr4+rr746iouLq8Z//OMfR9OmTeN73/veeo3eZy1evDgioqpB/6x1Tc9nlZaWxrvvvhsREWVlZTFy5Mho1apV9OjRI84444x47bXXomnTpuvdyO2zFi1atFk3C2jevHm1x/n5+V8YfH7eggULYvDgwVFSUhK9evWK888/Pz788MOIiPXq+6Jwe0O++93vxsSJE6NFixZxySWXxAEHHBBf+tKX4vbbb9/oMiNHjowmTZps9OuZZ56pNn/Pnj3jq1/9arWvPfbYo0b7t86VV14Zl19+ebz11lvxk5/8JPbcc8/o3bt3/P3vf4+Ita/N+++/v15t3//+9yNi7X9y1tlhhx0i4t8/QwDAtlNeXl71O/f222+v1rtuLLSNiKrf9XvuuWd88skn0aRJk2jTps168x166KExbdq0DfaEN9xwQ7z44ouxcOHCOOSQQ+Kuu+6KiIi+fftW612ffvrpasvtt99+8dZbb1U7EWDJkiUxdOjQOOyww+Loo4+uGt95553jrLPOihNOOCFmz579hc/F4sWLN1hnxPr9a2lpaUREVf960003RZcuXWLnnXeOo48+OiZNmrTRGxyvs2jRomjduvUmQ8oN9a4RsUX96+WXXx477bRTdO7cOY499th48skno6ioaKt71+Li4pgyZUp8+9vfjnvvvTeGDBkS7dq1i5EjR8aKFSs2uMwzzzzzhb3ryJEjt6iGmtYeoUeFLHPGLRD9+/df7+zLL7LjjjvGfffdV22soqIi3nrrrVi5cmX07t07XnvttXjhhRfin//85wbXkZ+fH3Pnzo2ddtppg83FokWL4m9/+1sMHz58g8tv7C/gp5xySixatCh23HHHOP/88+OJJ56IoUOHRkVFRZx88slx8sknV5v/s2fcRkS1kPiRRx6JESNGxA9+8IPYZ599Yu7cuVFZWRnvvfdevP322/HrX/86TjjhhDjiiCPinnvuqWpiPqt169YREfHxxx+vN21dCPhZCxcurGr2zznnnLj//vtjwoQJccghh0SLFi0ipbTJZqxVq1bxwQcfrDf+6KOPxr777vuFy26J448/Pl599dV49NFHo2/fvlFYWBgffvhh3HjjjbWy/qOPPjqOPvro+Pjjj2Py5MlxySWXxPHHHx/9+/ePXXbZZb35L7744mp3gP68Pffcc4u2X5P9a9KkSZxzzjlxzjnnxDvvvBOPPfZYXHDBBTFixIh45ZVXYocddojdd9897rzzzg0u361bt6p/l5eXR8S/f4YAgNo1f/78qKioiLFjx8awYcPiyiuvjIsuuijOP//8Dc5fUFAQ77zzzgb/+B6xtnfs3bt3NG3adIPTN9S/Pvnkk3HGGWfE/vvvH8XFxTFmzJg48sgj49BDD42pU6du8qzPz/auixYtigEDBkRlZWVccMEFMXfu3Pjoo49i+fLlMXfu3BgxYkQ8/fTTcfDBB8ekSZPioIMO2uA6W7duvcHeNWJt//rZs3EXLlwYERFt2rSJ559/Pk466aQ488wz47TTTqv6xN3o0aNj6tSpG92HVq1axeLFi6OysrJaePvPf/4zKisro3fv3l/4HGyuu+66K8aMGRNXXHFFjBgxItq3bx8REQMHDoylS5du9fp32223uPnmm2P8+PExY8aMuO222+Laa6+N3XfffYMnnHz2j/sbsqE/ANTEup+RioqKqn+v6zPX0aNCdgluga12zz33xKmnnhoff/xx7LfffvGd73wnHnvssS/8aNc6t99+e4wYMWK98QsuuCCKiorimGOO2eiyL7zwQkyYMCGuuuqqSCnFSSedFA888EA899xz8c1vfjMiIq6++uoYO3ZsvP3223HJJZfEkCFDqpbfUAP1WU8//XScddZZsXTp0mr7cvrpp1f9+/nnn4/jjz8+5syZEwcccMB66+jYsWM0bty46qzfz5o1a1a8+eab0aVLl4hYe6bC888/H+eee27Vug855JD4zne+U62mZcuWVTuzIC8vr9pZAgcddFA8+uijsXr16qqPk82aNSsGDhwYDzzwQLRs2fIL93tzPf/88zFq1KgYMGBA1dhDDz0UEZs+82FdU55S2uB/SI477rhYunRpPPDAA7HDDjvEoEGDoqKiIoYMGRIffvhh7LLLLpGfn19tvzt37hydO3euhT1ba0v3b82aNdGzZ8846aST4uyzz46OHTvGqFGjYtasWVVnCvfv3z8efvjhKC0trXb5kNtvvz0mTZpU7YzidWeurPtYGgBQOz766KPo169fvPzyy7HzzjvH/vvvH4cddtgX/gF4nQEDBsSTTz653vjUqVPjgQceiJtvvvkLl//hD38YY8aMie7du8f9998fxx57bPz85z+PlStXxj/+8Y8YMGBA/OxnP4s333wzevXqFRMmTKha9oUXXljvE2Of9frrr0eLFi3iP//zP6NPnz7Vpq3rZX/zm9/E1KlT48EHH9xocNulS5eNnpX74IMPxj777FP1+N57741OnTpF165d46GHHoqUUlx00UVVZ+yuWrWq6vlaF8x+voc76KCD4oorroiHH364Wt978sknR8eOHeP+++/f6D5vieeffz523HHHqsthRawNu6dPn17tk3Ub8tnedUMefvjhqrOZ27dvH/vtt1/st99+cdttt8X777+/3jry8vKiRYsWNbqswZZq1apVRKw9a3bdHx0+H6TrUSG7XCoB2Grf+MY34vLLL4/33nsvpk+fHmPGjIlnn302Ukrx0UcfxfHHHx/XX399pJRi1KhRcdJJJ8Urr7wSKaX1QtvKysq46KKL4o9//GP84Q9/2OBZrOs8//zzcffdd0fjxo1jyZIl8f7778ef//zn6NmzZ9U8rVq1iv/6r//a4OUWNuWqq66KSy+9NH7/+99XfUStZcuWce+991Y9PuCAAzYa2kZEFBUVxYEHHrjBswwqKytj4MCBMXHixLjvvvvisMMOi3bt2sUZZ5wREWv/Cv/YY4/F9ddfH08//XT8+te/jmHDhsUOO+xQ7TphO+ywQ0ydOjWeeeaZSCnFL37xi/joo4/i8MMPr7qe8NChQ2Pffffd5KUwtkTv3r3j9ttvjzvuuCOeeuqpuOCCC+JnP/tZNGvW7AuvY7au5oi1Zz68+eab600/5JBD4sEHH4yf/exn8de//jUmTpwYF1xwQXTv3j169OhRtY4XX3wxnnnmmY1+BK0u969JkyZxwAEHxCWXXBLXXnttPPPMM3H99dfHbbfdFt/73vciYu1ZvF26dIkBAwbETTfdFJMnT45f/epXMWrUqNhhhx2qfQTwb3/7W3Tq1KnaGQ4AwNZr1apVjBkzJl544YV455134g9/+EOMGzeuqr+75ZZb4rvf/W6sXLkynnzyyejbt29MmjQpKisrNxjaTp8+PQYNGhSHH354/OAHP9jodhcvXhx33nln1X0HZs2aFT/60Y/ioosuqjbf2LFja3Tt0AMOOCCeffbZGDhwYNW+nH766dUe//SnP4177703rrrqqo2u51vf+lbMnj17g2ehjhs3LsaNGxdPPPFEnHLKKfHoo4/Gr3/968jLy6s6M3b06NHx17/+Nf70pz/FIYccUvWR+nX90w477BALFy6Mxx57LN5999044ogj4oADDoiRI0fGDTfcEE8++WScfPLJMXPmzDjrrLO2+HnYmN69e8eSJUvi7LPPjsmTJ8ctt9wSBx98cOTl5W2yd1134sNTTz0V06dPX2/6AQccEPn5+TF48OB48MEH46mnnoqRI0fG8uXLq64pvKn+d1tZt48nnXRSPPnkk3HjjTfGj370o2qf4tOjQoZt23ufAfXZb3/729SyZcsaLTtz5sx09tlnp3bt2qV27dqlp556KqWU0vPPP58OO+yw1KRJk/S73/2uav4VK1akiRMnpq9+9aupoKAg3XLLLdXWd9JJJ6V99tknvfzyy2nOnDlp5syZqWfPnuvdnXeddu3apdtvv73qcadOnTZ4d+Bjjz12vWXX3a115cqV601r2bJluvfee7foubj22mtTq1atqq1v3V1or7jiitS2bdtUVFSUvvOd76R58+ZVzbN48eJ07LHHptatW6fi4uL0rW99K02dOjWdeOKJqW3btunTTz9NKaX0X//1X6lVq1apqKgovf322ymllKZMmZIOOuig1KxZs1RaWppOOOGEtHDhwmr79/TTT1er8/N3+N2U+fPnpyOPPDK1bNkytWzZMh199NHp5ZdfTgMGDEi9evX6wm0tWLAgfe1rX0tNmzZNo0ePTilVv7NtSindcMMNqWfPnqmoqCi1a9cuDR8+vGr/UkrpT3/6U2rfvn0qLCxMU6dO3ey6191Z97PPdW3t34oVK9I555yTOnfunAoLC9Ouu+6azjvvvGqv/QcffJBOPvnk1L59+9S0adO0++67p0suuaTqDtHr7LPPPumcc87Z7P0CAGru448/Ttdee23af//9U35+fjr77LNTRUVF+uCDD9K5556bmjdvno444oi0ZMmSqmX++c9/ppNPPjk1atQoDR48OC1fvrxq2nPPPZciIj388MNpzpw5ac6cOWnMmDGpZcuWacWKFett/9xzz00DBgyoeryuX9nQ1+d7hpTW9rp/+MMf1hs//fTT08CBA7foufjwww9Ts2bN0p/+9KeqsXU9z5VXXpl69eqVmjZtmr785S+v1xdfe+21abfddksFBQWpW7du6Te/+U3Vsg899FBKKaWXX345de/ePTVt2jT96le/SimltGTJknTyySen0tLSVFRUlPr06ZOefPLJavt33HHHVdvWxvrMjamsrEwXXnhh6tixYyooKEhf+cpX0i233JJuu+22FBFp5syZG91WSimdc845qXnz5qlVq1ZpzZo16/XOL730Uho4cGBq06ZNKi4uTvvtt196+OGHq6ZvqP/dUuv2+eabb15v2rx58zY6bcKECalbt26poKAg7bvvvumvf/1r2nPPPav13npUyCbBLbBRWxPc3nPPPalDhw7pwgsvTB999NF602+77ba06667VoWJEyZMSPn5+Wnw4MHplVdeWW/+5557Lu2yyy5VDWt+fn7ab7/9qgV5n7Wh4PbGG2+sNs9xxx1XJ8HtihUrUrt27dJtt91WbdtbEpLWtTVr1nzhV2VlZa5L3K797W9/S82aNUsLFizIdSkA0CB89NFHadddd01HH310mjFjxnrTX3/99bTvvvtWhWIffPBB2nnnndOee+6Z7rrrrvXmX7lyZfrWt76VGjVqVNW/tm3bNk2YMGGD299QcNu3b99q86zrUbd1cJtSSj/5yU/SIYccst62NzckrWsVFRVf2LuuO+GBraNHhbqXl9IX3JocYCt8/gYDn/fpp59G48b/vtT2Bx98EG3btq2L0mps6dKlUVRUFE2aNNmi5f74xz/GtddeG//85z8jPz8/jj/++Jg8eXLMnz9/2xS6FRYuXBgdOnT4wnl++9vf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O1577TUfM6NBePHFF6N37945rWHGjBnRq1evnNawvdLHreV5ALYn+lmoTj+7fduSPs4ZtwD13JQpU2L+/Plx1113VWtyIyLy8/NjzJgx0adPn5gyZUocfPDBuSkS6lC3bt1ixowZNVp2zpw5MWLEiLjjjjuie/fuW1UDALB59LNQ3db0sxG109PqZ7NBcAtQzy1YsCAiInr06LHB6evG180H27uioqKtPjuge/fuzjAAgDqin4XqaqOfjdDTbg/cnAygnuvQoUNERMyePXuD09eNr5sPAACyRD8LsGGCW4B6rl+/ftG5c+e47LLLorKystq0ysrKGDduXOy6667Rr1+/HFUIAAAbp58F2DDBLUA916hRo7jqqqvikUceiUGDBsW0adOivLw8pk2bFoMGDYpHHnkkrrzySjdyAAAgk/SzABvmGrcA24HBgwfHxIkT46yzzoo+ffpUje+6664xceLEGDx4cA6rAwCAL6afBVif4BZgOzF48OD4zne+E1OmTIkFCxZEhw4dol+/fs5MAACgXtDPAlQnuAXYjjRq1CgOPvjgXJcBAAA1op8F+DfXuAUAAAAAyBjBLQAAAABAxghuAQAAAAAyRnALAAAAAJAxglsAAAAAgIxpnOsCAKhuxYoVMXfu3Bovv3Llypg/f3507tw5mjVrVqN1dOvWLYqKimpcAwAADVcW+tkIPS1Q/wluATJm7ty50bt375zWMGPGjOjVq1dOawAAoH7KQj8boacF6j/BLUDGdOvWLWbMmFHj5efMmRMjRoyIO+64I7p3717jGgAAoCay0M+uqwOgPhPcAmRMUVFRrZwZ0L17d2cYAABQ5/SzALXDzckAAAAAADJGcAsAAAAAkDGCWwAAAACAjBHcAgAAAABkjOAWAAAAACBjBLcAAAAAABkjuAUAAAAAyBjBLQAAAABAxghuAQAAAAAyRnALAAAAAJAxglsAAAAAgIwR3AIAAAAAZIzgFgAAAAAgYwS3AAAAAAAZI7gFAAAAAMiYnAe3H374YXTp0iUmT5683rRly5bFHnvsERdffHG18VtvvTW6dOkSRUVF0atXr5g6dWrdFAsAABugpwUAoLblNLidOnVq9OnTJ+bNm7fB6aeeemq8+eab1caeeeaZGD16dIwfPz7Ky8vjhBNOiIEDB8bixYvromQAAKhGTwsAwLaQs+D2lltuieHD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AAAAMkZwCwAAAACQMYJbAAAAAICMEdwCAAAAAGSM4BYAAAAAIGMEtwAAAAAAGSO4BQAAAADIGMEtAAAAAEDGCG4BAAAAADJGcAsAAAAAkDGCWwAAAACAjBHcAgAAAABkjOAWAAAAACBjGue6gFxIKUVERFlZWY4rAQBgS+jf1tLPAgDUT+v6t3X93BdpkMFteXl5RER07Ngxx5UAAMCW088CANRv5eXl0bJlyy+cJy9tTry7namsrIz33nsvWrRoEXl5ebkuh88pKyuLjh07xjvvvBMlJSW5LgfqHccQ1JzjJ/vWta4lJSUNuo/Tz2af9xOoOccPbB3HULallKK8vDx22mmnyM//4qvYNsgzbvPz82OXXXbJdRlsQklJiTcY2AqOIag5xw9Zp5+tP7yfQM05fmDrOIaya1Nn2q7j5mQAAAAAABkjuAUAAAAAyBjBLZlTUFAQF110URQUFOS6FKiXHENQc44foLZ4P4Gac/zA1nEMbT8a5M3JAAAAAACyzBm35MzDDz8c/m4ANecYgppz/AC1xfsJ1JzjB7aOY2j7J7glJ5577rkYM2ZM1ePDDjss8vLyqn395S9/yWGFkG2OIag5xw9QW7yfQM05fmDrOIYaBsEtOXHDDTfEOeecE3l5eVVjd911V6SUIqUUX//613NYHWSfYwhqzvED1BbvJ1Bzjh/YOo6hhkFwS51buHBh/P3vf4/hw4fHSSedFC+88MJmL/vGG2/EjjvuGPPnz992BULG1eQYevzxx2O//faLli1bRqdOneKCCy6IioqKOqgWsqUmx8+9994be++9d5SUlMQee+wRN910Ux1UCmSdnhZqTj8LW0dP23AIbqlzV111VZx66qlxyy23xN133x277757REQcf/zx0bx582jevHn8/e9/X2+5hx56KPr27RsfffRRXZcMmbKlx9CcOXNi8ODB8fOf/zw++uijePzxx+OOO+6I3/72t7naBciZLT1+Zs6cGccee2xcccUVUVZWFn/+85/j/PPPjyeffDJXuwBkhJ4Wak4/C1tHT9twNM51ATQsZWVl8fvf/z5WrVoVERFjxoyJVq1aRUTELbfcEkOHDo2IiP3337/acmPHjo177rknfvWrX8Xxxx9fpzVDltTkGHrzzTdjxIgRMXjw4IiI6NatW3z3u9+NZ599Ns4+++w63gPInZocPz179oz3338/WrVqFSml+Oijj2LlypUxc+bM+MY3vlH3OwFkgp4Wak4/C1tHT9uwCG6pUyUlJXHhhRfGq6++Go8//nice+65m7XcSSedFBdeeGG89dZb27hCyLaaHEMDBw6MgQMHVj1evXp1PP7441W/0KGhqMnxk5eXF61atYqVK1dGy5YtY82aNdGtW7cYNmxYHVQMZJWeFmpOPwtbR0/bsAhuqXPDhg2L3r17x2233RaFhYWxaNGiTS6z884710FlUD/U5Bhap7y8PI455pho1KhRnHnmmduwSsimmh4/BQUFsXz58njrrbfisssui4ULF0aHDh22cbVAlulpoeb0s7B19LQNh2vcUqfWrFkTgwcPjubNm8evf/3r2HnnneOBBx6IiIgf/vCHUVhYGIWFhVt0cwdoSLbmGHrzzTejb9++8fHHH8df//rXKC4uruPqIbe25vjJz8+PJk2aRNeuXePwww+P4447ro6rB7JETws1p5+FraOnbVgEt9SpJk2axNFHHx0XX3xxXHfddfHKK6/EXnvtFRERt912W6xatSpWrVoV++23X44rhWyq6TH017/+NXr37h0HHnhgTJ48Odq0aZOL8iGnanL83HPPPXHggQdWW8/KlSvjX//6V53WDmSLnhZqTj8LW0dP27AIbqlTKaXo1atXzJ07N44//vjo169fTJ8+PddlQb1Rk2No5syZceSRR8Yll1wS1113XTRt2rSOqoVsqcnxc8ABB8TMmTPj97//fVRUVMSsWbPi4osvjmOOOaaOqgaySE8LNaefha2jp21Y8lJKKddF0LCcdtppsfPOO8d3vvOdeOONN+Lb3/72Ruft1KlTzJ8/v+rx/PnzY9ddd4158+ZF586dt32xkEFbegwdeOCBMWHChPU+StavX7947LHHtnW5kCk1+R00ZcqU+NnPfhYvv/xytG7dOn7wgx/E+eef7z+N0MDpaaHm9LOwdfS0DYfglpyqrKyMTz75ZKPT8/LyoqCgoA4rgvrFMQQ15/gBaov3E6g5xw9sHcfQ9k1wCwAAAACQMa5xCwAAAACQMYJbAAAAAICMEdwCAAAAAGSM4BYAAAAAIGMEtwAAAAAAGSO4BQAAAADIGMEtAAAAAEDGCG4BAAAAADJGcAsAAAAAkDGCWwAAAACAjBHcAgAAAABkzP8HpYRjMn5fc5AAAAAASUVORK5CYII=",
            "text/plain": [
              "<Figure size 1400x600 with 2 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        }
      ],
      "source": [
        "# 示例 5：patch_artist 参数对比\n",
        "np.random.seed(42)\n",
        "data1 = np.random.normal(100, 15, 100)\n",
        "data2 = np.random.normal(110, 15, 100)\n",
        "data3 = np.random.normal(105, 20, 100)\n",
        "\n",
        "fig, axes = plt.subplots(1, 2, figsize=(14, 6))\n",
        "\n",
        "# 不填充\n",
        "axes[0].boxplot([data1, data2, data3], \n",
        "                labels=['组1', '组2', '组3'], \n",
        "                patch_artist=False)\n",
        "axes[0].set_title('不填充箱体 (patch_artist=False)', fontsize=12)\n",
        "axes[0].set_ylabel('数值', fontsize=10)\n",
        "axes[0].grid(True, alpha=0.3, axis='y')\n",
        "\n",
        "# 填充箱体\n",
        "bp = axes[1].boxplot([data1, data2, data3], \n",
        "                     labels=['组1', '组2', '组3'], \n",
        "                     patch_artist=True)\n",
        "axes[1].set_title('填充箱体 (patch_artist=True)', fontsize=12)\n",
        "axes[1].set_ylabel('数值', fontsize=10)\n",
        "axes[1].grid(True, alpha=0.3, axis='y')\n",
        "\n",
        "# 为每个箱体设置不同颜色\n",
        "colors = ['lightblue', 'lightcoral', 'lightgreen']\n",
        "for patch, color in zip(bp['boxes'], colors):\n",
        "    patch.set_facecolor(color)\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "plt.tight_layout()\n",
        "plt.show()\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "### 2.3 showmeans 参数：显示均值\n",
        "\n",
        "`showmeans` 参数用于在箱线图上显示均值标记。箱线图默认只显示中位数，但有时需要同时显示均值来比较均值和中位数的差异。\n",
        "\n",
        "**基本语法**：\n",
        "```python\n",
        "plt.boxplot(x, showmeans=True)  # 显示均值\n",
        "plt.boxplot(x, showmeans=False)  # 不显示均值（默认）\n",
        "```\n",
        "\n",
        "**说明**：\n",
        "- 均值用三角形标记表示\n",
        "- 如果均值和中位数差异较大，说明数据分布偏斜\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 7,
      "metadata": {},
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/339010389.py:10: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  axes[0].boxplot([data_normal], labels=['正态分布'], patch_artist=True)\n",
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/339010389.py:14: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp0 = axes[0].boxplot([data_normal], labels=['正态分布'], patch_artist=True)\n",
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/339010389.py:20: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp1 = axes[1].boxplot([data_normal], labels=['正态分布'],\n"
          ]
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABW0AAAJOCAYAAADMCCWlAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAZsdJREFUeJzt3WeYVeXZP+xrBoY2zCAdpYigiFKMWBJFA4hGFBMVGypEBYPGLlbsncdeeMSGLXaDgmKCXSxY/ormEWKNYhfpzNAZZr0feNlxO4MMCuwFnOdx7GOz79WuNZKVa36sfa+8JEmSAAAAAAAgFfJzXQAAAAAAAP8ltAUAAAAASBGhLQAAAABAightAQAAAABSRGgLAAAAAJAiQlsAAAAAgBQR2gIAAAAApIjQFgAAAAAgRYS2AAAAAAApIrQF1nu33XZbfP/991Ve/5133okJEyZUGB89enSMGzduNVYGAADZXnjhhXjttdeqvP7ChQvj4YcfjsWLF2eNf/bZZ3HzzTdHeXn56i4RgLVAaAsbuFNOOSXy8vJW+XXPPfdU2Nd+++230u2efvrpFdZyww03VOnYG2200Qr30axZs7j//vszn+fMmRN//etf41//+leVfyZXXXVVnHrqqfHRRx9lvYYNGxZ33HFH1th3331X5f0CAJAeo0ePXmnf2bdv3xVuP3v27Cr3zqNHj650H2effXbsvvvuWWM333xzDBs2rMrn8eKLL8ahhx4ab7/9dlafOnbs2DjjjDPik08+yRpPkqTK+wYgd6rnugAgt84555w49thjK4wvXrw4evfuHS1btoy77rqrwvKNN9640v0dfvjhcd5551W6rGPHjj9byxFHHBG9evVaac3VqlVb6TrLPf3005EkSdSvXz8++uijrGX5+fnRrl27rLF58+bFM888E40bN46tttqq0n0++OCDmT8fcMABMXLkyJXW8cc//jH++Mc/xqBBg1a67j333BNHHXVUTJ48OVq3br3S9fnlunfvHi+//PIKlz/00EM/+8vaj1100UVx8cUXr9ZfhM4+++yYM2dO3HLLLattnwDAf9WpU6fSb1hFRJx//vk/u21xcXF8+OGHVTpOixYtqrTe4sWL48UXX4xjjz22Qu8aEdG8efMoKirKGnvssceibdu2scsuu1S6z5/2tKWlpVG3bt2frWPkyJFx3XXXxeuvv16luvPy8uLCCy+Miy66qErrs+qW/46wMmvjdwg9KqwdQlvYwDVp0iSaNGlSYXzIkCHx/fffx7PPPhvt27ev8v4eeOCBeOCBB35RLfXr14/69ev/om1X5G9/+1tEROy0004VltWpUyfmzZuXNXbPPfdEWVlZvPvuu1FcXJwZf/LJJ+Oggw6KyZMnxyabbLJKNdx1113x5ZdfxsCBA3/BGbCmNWvWLEaNGlXpsi222GItV5Pt3HPPjXbt2kWfPn1ijz32yGktALA+mj9//gr/oT4i4pBDDlnhsvz8/FXqk6viiSeeiDlz5sSVV14ZV155ZYXljz76aBx00EGZz9OnT4+HHnoohg0bltVrLlq0KDbbbLM47bTT4rTTTlulGqZNmxbHHXdcjBkz5pefCKtd796944033sh8HjFiRNx5553x+OOPZ91Qs6Kba1YnPSqsHUJboIJnnnkmrr766qhbt25stdVWsXDhwqhVq1aVtv01d9r+Gp988kksXrw4ysrK4ptvvolJkybF3LlzY+zYsfHEE0/En/70p6z1n3zyyejXr1/W2Lx58+Lqq6+O/v37R3Fxcdx///3Rv3//rHWaN2+e+fMRRxxR6TQRP7ZgwYI477zz4qabblqlO4RZe2rWrBm/+93vcl1GpYqKiuKvf/1rnH322RpiAFgDfs2dtr/G1KlTY+rUqTF9+vSYN29eTJo0KRo2bBhDhw6N/fffPx5//PEK2zRo0KBCP/k///M/UVBQkOlrq1evHkuXLs0sP/300+P000/PfK7KN4Iuv/zy2HHHHeO3v/3tLz091oDGjRtH48aNM5+XTzu37bbbrvVv5+lRYe0wpy2Q5a233ooDDjggNt1004iI+Mc//hHNmjWLK6+8MqsBXN1OOOGEVZ5X98dOOeWU6NevX+ZrOgcddFAcdNBB0b179wqB7XI/bXovvPDC+PLLL6NRo0aZsUaNGsWHH35Y4fXHP/6xSud15513xtKlS2PffffNjE2bNi2OPPLIaNasWdStWze23XbbePTRRyts+//+3/+LXXfdNWrVqhWbbLJJnHXWWVFWVpZZXl5eHldddVVsscUWUaNGjdh0003j7LPPjoULF0bEsrul69SpE4sWLcpsc9JJJ0VeXl68++67mbG77747CgoKYtasWXHkkUdGr1694vbbb4/NNtssateuHTvvvHN8/PHH8eSTT0aHDh2iTp06scMOO8Q777yTVe+rr74a3bp1i8LCwmjQoEH0798/pkyZkrXO66+/HnvvvXc0adIkatWqFZtttllceOGFmb9bX3zxReTl5cUTTzwRBx10UBQVFUWLFi3i6KOPjrlz52b2895778Xuu+8e9erViwYNGsQf/vCHrHNq3bp1lf/uVEWSJHH99ddH586do27dulFcXBw77bRTPP/88yvc5vPPP4/9998/GjZsGMXFxdG1a9d44YUXstaZOHFi9O7dO4qLi6O4uDj23Xff+OSTT7LWOfroo+Nf//pXPPfcc6tcNwCwZrzzzju/6pkQjz/+ePTr1y/GjBkTkyZNin79+kX37t3jo48+iqFDh67wuD/uX//1r3/FjTfeGEVFRVGzZs3M+B133FGhd61surPKTJ8+PW677bYKU3oNHz482rdvH7Vr146WLVvGySefHAsWLMhap7S0NI499tho1KhRFBYWRq9eveLTTz/NWue1116L3XbbLerUqRP16tWLP/3pTzFp0qSIiPj4448jLy8v7rvvvsz67777buTl5cVJJ52UGVuwYEHUrl07/vd//zfGjRsXeXl58eKLL0a3bt2idu3a0apVq7jjjjviu+++i3333TcKCwujRYsWcdVVV2XVMmPGjBg0aFA0a9YsateuHb/73e9i7NixWevMmjUrTjnllGjTpk3UqlUrGjVqFPvuu2988cUXmXW6d+8exx57bFx99dXRqlWrKC4uju7du8dbb72VWWf+/Plx8sknR4sWLaJ27dqx1VZbxc0335xZftFFF63y80R+zj333BPVq1ePe++9Nxo2bBjNmzePDz/8MLp37x7du3fPWnf5z/DHD1zWo0JKJAD/v8ceeywpLi5OjjrqqOT6669P6tWrl5SXlyf33Xdf0qBBg6Rr167JlClTVrj9vvvum0TEz77Gjh1b6bZTpkxJPvzwwwqvTTbZJBkyZEilyyrTtGnT5L777kvee++9ZPfdd0969+5doYY77rgjGTVqVNKwYcPMdo888khSrVq1pH79+sm5556bJEmS3HfffUleXl5Sr169Cq+CgoLkiCOOWOnPdJdddqmwXq9evZJtttkmefzxx5MXX3wxOeqoo5K8vLxk/PjxSZIkyd13351ERFJUVJQMHTo0ef7555PjjjsuiYhk2LBhmf0ceeSRSfXq1ZNzzz03efbZZ5Mrr7wyqVOnTtKzZ8+kvLw8ee2115KISF566aXMNh06dEgiIrnuuusyYwcffHDSvXv3JEmS5Igjjkg22mijZOutt05GjhyZPProo0mDBg2SzTffPGnbtm1y//33J2PGjEk222yzZMstt8zs47XXXksKCgqSXXbZJRk9enQycuTIZPvtt0/atGmTzJ49O0mSJJk4cWJSu3bt5PDDD0+eeeaZ5IUXXkiOOOKIJCKSu+++O0mSJJk8eXISEUmjRo2SM844I3nxxReTSy+9NImI5IQTTkiSJElKS0uTRo0aJQceeGDy7LPPJk899VSy0047JQ0bNkzmzp2bJEmSvPvuu8kbb7yxwtdy3bp1SzbddNNkyZIlFV7l5eWZ9c4777yksLAwuemmm5KXX345GTlyZNKuXbukbt26SWlpaZIkSXLhhRcmP/6/1fbt2yc9evRInnrqqeTZZ59N9tlnn6RWrVrJ5MmTkyRJkk8//TQpLi5OOnTokDz88MPJmDFjkj322CNp0KBB8uWXX2b9ndl2222To48+eiV/2wCAVTFq1KiV9q6HHHJIpdsuWLCg0v70+OOPT9q3b1/psuU90Y+dddZZSc+ePZMlS5YkBx10UHLyySdXqKFr165JkiRJvXr1kjFjxiRJkiQ//PBD0rp166Rhw4ZJ8+bNM/urVq1aUlhYWKF3LSwszOpTVmTEiBFJjRo1koULF2bGHn744aRmzZrJ9ddfn7z88svJbbfdltStWzc55phjMutERJKfn5/06dMnGTt2bHLXXXclG220UbLddttl1nn++eeT6tWrJ7vvvnsyevTo5JFHHkm22WabpG7dusmkSZOSJEmSLbbYIqt3vvrqq5OISDp37pwZ++c//5lERPLFF18kL730UhIRSbNmzZKhQ4cmzz33XNKrV6+kWrVqSfv27ZNzzz03eeGFF5L+/fsnEZHpAxctWpRsu+22Sf369ZNhw4Ylzz77bHLCCSck+fn5yZNPPpk51q677pq0a9cuefDBB5NXXnklufnmm5OioqKkW7dumXW6deuWNGjQINlll12SJ554Ihk5cmTSqlWrpHHjxsmCBQuSJEmSY489Ntl0002TBx98MHnppZeSs846K4mI5KGHHkqSJEm+/vrrn+1dp06dWuG/1fLec3lv+WPLf59o06ZNMnr06OSuu+5Kli5dmnTr1i2r9iRJMj/D5b8z6FEhPYS2QDJr1qzk+OOPT/Ly8pJzzjknKS8vz4S2y3399dfJtttum2y22WbJf/7zn5/d38cff5w899xzSZIkyTfffJOMGjVqleo58cQTk6+++ipJkiTZdNNNk+uvvz4pKytLhgwZkkycOPFnt10e2i733XffVdowP/roo0nTpk0z6z300EPJnXfemXTr1i0rtP3xOj92+OGHrzS0LS0tTfLz87OC1iRJkrp16yZXXnll5vPSpUuT0047LXnttdeSJPlvk3XTTTdlrdOiRYukT58+SZIsC0AjIrn88suz9v23v/0tiYjkySefTJYuXZo0bNgwcz5TpkxJIiLZaqutkn333TdJkiQpKytL6tevn1x77bVJkiSZEPXHofjywPj555/PjF111VVJRCSzZs1KkmRZQ7vZZpsl8+fPz6wza9aspHHjxsmll16a+XnuueeeWWHo8uMff/zxSZL8N7Tt169f1nn97ne/Szp16pQkSZK88847SUQkb731Vmb5f/7zn+SMM85Ivv7660r+S6xYt27dVvhL2vK6kyRJDjvssOSGG27I2vaxxx5LIiJ5++23kyTJDm2nT5+eRETyyCOPZNafPXt2cuqpp2Z+Kenfv39Sr169rH8IWbx4cbL11lsnAwcOzDrWiSeemLRo0WKVzg0AqJpFixYlf//73zOh6qhRo5Jvvvmmytvfe++9yWOPPZYkybJ+YJtttkmSZFm4eOONN/7ststD2+XmzZtXoXddHpTVqVMncwPEf/7zn+Tkk09ObrnllgqhbWU3STz33HNVCm0PPvjgrKA1SZLkhBNOSLbeeuusHu7+++/P6lUjItluu+2y1jnnnHOSiEhKSkqSJEmS7bffPmnfvn1SVlaWWWfWrFlJgwYNMj3uKaecktXz7LXXXslWW22V5OXlJTNnzkySZFlftLwvXB44nn322Zlt/t//+38V+smpU6cmEZFcf/31SZIkyZ133plERPL0009nnevRRx+dtG3bNkmSZb3zrrvumunRlzvxxBOTwsLCzOdu3bolhYWFyZw5czJjt956axIRyYQJE5IkSZKOHTsmf/3rX7P2c8kllyRPPfVU8ktVJbS98847s8arEtrqUSE9TI8AG7j77rsvNt9883jsscfin//8Z1x++eWVfn28RYsWMW7cuNh4441j9913j++++y6z7IYbbogTTjgh8/nJJ5/MzJ31xhtvZM0de++998YRRxyxwnrGjh0bt9xyS9Y0ABHL5pt98803Y+edd17hvGOV2XjjjaN9+/ZZr6Kioli0aFFUr/7fab379u0bAwYMqLD9Dz/8UOlXlKrysLVvv/02ysvLs+bBjYjYbbfd4vzzz48DDjggRowYEd9++21cc8010bVr16z1evTokflzfn5+bLbZZjFr1qyIiHjllVciIuKwww7L2ubQQw+NatWqxcsvvxz5+fnRq1evzFfyX3zxxWjatGkceeSR8dprr0WSJPHWW2/FrFmzsqaQaNCgQdZDNZbPnfXjeV+XTyExe/bsWLBgQbz++utx4IEHRkFBQZSVlUVZWVnUrVs3dtxxx3jxxRcjIqJfv37x9NNPR1lZWXzwwQfx5JNPxuWXXx6LFi2q8EC4nz44rm3btpnpEdq3bx8bb7xx7L333jFo0KB47LHHolGjRnHVVVdlnsy8dOnSTB2VvX5s4403jrfffrvC68cP83jggQfi5JNPjjlz5sSbb74Z9913Xzz00EMRERVqj4ho2LBhbLPNNjFgwIDo379/3H///bFo0aK47rrrokOHDhER8fzzz8eee+4ZDRs2zNSVl5cXPXr0yPzMlmvZsmV88803sXjx4grHAgBWzYcffhi///3vM9M4lZSUZB44G7GsZ1n+wKc5c+bEb37zm/jyyy8r3deCBQviwgsvjA8++KDCsk8++SROPfXUOPfcc6tcW506dSr0rq1atYry8vKs/rVt27Zxww03VPrcib322qtC71rVeUe/+uqrSnvXDz74ILp06RIXX3xxvPnmm3HooYfGiSeemLVe9+7ds36PaNu2bUQsm2Jg7ty5MWHChDjkkEOypnjYaKON4o9//GO8/PLLEbHsYVvffPNNfPzxx1FWVhavvvpqnH322ZEkSbz66qsRsWwu159Of7bzzjtn/ryy3jViWR/WtGnT6NmzZ1aP+Ic//CE+++yz+Oqrr6Jp06bxyiuvRNeuXeO7776Ll156KW655ZZ4/fXXK/R/W2+9ddZDjJef+/L+dbfddovbbrstevXqFcOGDYtPPvkkzj///Ojdu3dELJv27Od616QKcxFXZvvtt1/lbfSokB5CW9jAtWjRIg499ND46KOPolevXj+7bnFxcYwZMya6dOkSS5YsyYx369Yt7r777rjhhht+dvuysrK49NJLM8HaT82dOzeOO+64GDRoUGy22WYVjv3000/Hb3/729h7773j+++//9njjBo1Kp566qnM2OzZs+ORRx6Jww47LHr16hULFy6MGjVq/Gy9Ecuavu+//77C64ADDljptjNmzIiIZRP1/9j9998fZ5xxRkyYMCH+8pe/RKtWraJHjx7xn//8J2u9unXrZn3Oz8+P8vLyiIiYOXNmREQ0a9Ysa53q1atHo0aNYs6cORERsc8++8Tbb78dJSUl8eKLL0aPHj1it912ixkzZsSkSZNi7Nix0b59+9h8880z+/hpvcsVFhZm/vzjhnzmzJmxdOnSuPrqq6OgoCDr9Y9//CMT8JeUlMSAAQOifv360bFjxzjllFPi008/jRo1alRoROvUqVPhvJafe2FhYbz66qvxxz/+Mf7+97/HgQceGE2bNo0BAwbE/PnzI2JZo/zTWn78+rEaNWrE9ttvX+H14yfvvvHGG/G73/0u6tevHz169Ihhw4Zl6llRE/3MM8/EgAED4rnnnov+/fvHJptsEvvtt19MmzYtIpbNbfzoo49WqO3mm2/O+keRiGW/0ET89+8UAPDLbb755pGXlxf77rvvSsOm66+/PmbOnLnC/vW8886LRYsWZc25utzJJ58cd9xxR1xxxRVx5513/uxx/v3vf8eVV16Z+VxeXh6vv/56nH322dGuXbv44IMPYunSpVXqXx988MEKvWtlz0+ozIwZMyr0gvvvv3+MHDkyioqK4tJLL42ddtopWrVqlTX3bETlvevyc5k9e3YkSVKhd41Y1s8u7127desWRUVF8cILL8Rbb70VCxcujD59+kSHDh3i5Zdfjs8++yw+/fTTCs+XqKx/XVHvGrGsD/vhhx8q9GEHH3xwRESmF7vrrruiTZs20bx58zjggAPi8ccfrzQor6x3XX7uERHXXHNN/M///E98+eWXcdJJJ8WWW24Z2223Xbz99tsREXHJJZf8bO967733VjhmVfw4SK4qPSqkR/WVrwKsz3r06JF1R+fKNGjQIB577LGssW233TaGDx8ef/nLX342+L3ssstixowZMXjw4EqXH3nkkZEkyQofvlCjRo0YNWpUbLfddtG/f/+sh0CVl5fHq6++GvPnz49jjjkmCgoK4tRTT40PPvggxo4dG6+99lrUrFkz9t577zjttNPio48+qrTh+qm8vLysO3J/PL4yDRs2jIj//ov+ckVFRXHZZZfFZZddFp988kk8+eSTcdFFF8Xxxx8fzzzzzEr3GxFRv379iIj4/vvvswLuJUuWxPTp0zN3E+y5556ZBwu8+OKLcdZZZ0WXLl2ifv368corr8TYsWOr/FC1FalXr17k5eXFKaecUuHO34jIPBjjjDPOiFGjRsUDDzwQu+22WxQVFUWSJL+omWzbtm3cfffdMWLEiJgwYUL87W9/i5tvvjm22GKLGDJkSIwZMybrAWy/Rmlpafzxj3+MLl26xL/+9a/o0KFDVKtWLf7+979X+mTn5Zo2bRo33XRT3HjjjTFx4sQYOXJkXHHFFXHeeefFbbfdFhtttFHsvvvucdppp1XY9qd/v0pLSyNi2f/+AIBfp6CgIB577LHYaqut4tJLL42TTz650vUmTpwY1157bdxwww0VHmAbEfHEE0/EDTfcEI8//vgK+5kBAwbEf/7znzjppJNil112iS233DKz7Msvv4xJkybFK6+8Ep06dYru3btHixYtYuzYsfH000/HzJkzY/vtt49jjjkm01dWpX+tVq1ahf61svor07Bhwwq9a0TEAQccEAcccEDMnj07xo0bF5deemkceeSR0aNHjxUG2j+20UYbRV5eXqU3Xnz33XeZ3rWgoCD22GOPeP7552PGjBmxww47RN26daNnz57xyiuvxGabbRZNmzaNHXfcsUrn83P1bLHFFvHggw9Wurx9+/bx+uuvx9FHHx2DBw+OE088MfOg5uOPPz7Gjx+/SscrKCiIM844I84444z4+uuvY+zYsXH++edHv3794uOPP45BgwbFPvvss8Ltf3pDyy9VrVq1Cv9QsbzPXE6PCukhtAVWi/79+8fQoUPj4osvju22267C8pEjR8Yll1wS999/f6bp/LHTTjstE67+XIhXt27dePDBB+O3v/1t3HfffdG/f/+YNm1abL/99vHVV1/FTjvtFAMGDIi+ffvGbbfdFtdee2307t07Bg8eHHvssUem0X3zzTcr3A1QmalTp2a+YvVTPzfNQ8SyrwtVr149vv7668zYDz/8ENttt11cf/31cdBBB0W7du3i9NNPj5dffjlrvZXZddddI2LZXbvnn39+Zvzhhx+OpUuXZpbXr18/dt5557jnnnvi888/jx49ekR+fn5069Yt/v73v8e777670jukV6Zu3bqx/fbbx4cffpj1FawkSeLII4+Mjh07RqdOneL111+P3XbbLfbdd9/MOi+99FLMnTs3cxdCVYwZMyaOOuqomDRpUjRr1ix23HHH2HHHHeNvf/tb/PDDDxER0alTp191Tj/2ySefxIwZM+LEE0+Mzp07Z9UREZXW/u6778Zee+0VY8aMiR133DE6d+4cnTt3jlGjRmVq7NGjR/z73/+O3/zmN1m/WJ1++umRl5eX9b+jb7/9Npo2bZr1ZGgA4Jdr1KhRnHLKKXH55ZfHn//85wrLp0+fHmeccUZ07dq10im0xo8fH/3794+zzjorq7epzCWXXBLPPfdcHH/88ZmbDo499ti4/fbbo1mzZnHqqafGwIEDo1atWrHtttvGDjvsEBdffHHsu+++mUB0+fQMVelfDznkkJWusyJt2rSJSZMmZY0dccQRMWfOnBg9enRstNFGsd9++8XSpUvjwAMPjOnTp1cptK1bt25su+228fDDD8f555+f6X1KSkpizJgxWdM37LPPPnHaaafFzJkzMzeX7LbbbnHzzTdH7dq1Y5999qnSDRQ/p0ePHjFmzJho3LhxJoyNWDZ13OOPPx733XdfvPHGG5EkSVx44YWZO3kXLlyY+W9YXl6euZv45yxZsiQ6deoURx99dJx++unRsmXLGDRoUEycODFzt/Imm2wSm2yyya86p6qoX79+vPfee1ljPw2g9aiQHkJbYLXIz8+P66+/PmrVqlXpnLNdunSJO+64o9I7MUtLS2PcuHExevTo2HbbbVd6rO222y6OOeaYzF0AjRs3jptuuim23HLLrLlYTz311Bg8eHClTd0XX3xRpQazadOmmfnOfuzH8/SuSJ06dWKXXXaJ8ePHx6mnnprZ3xZbbBGnnnpqzJs3LzbbbLN466234umnn46LLrpopftcrnPnztGvX7+45JJLYuHChdG9e/eYOHFiXHDBBdGjR4/Ya6+9Muv27t07zjrrrGjevHlsscUWERHRs2fPOPHEE6Nhw4YV5o/9Ja644oro1atXHHzwwfHnP/85qlevHrfddls89dRTMXbs2IhY9t/t0UcfjVtvvTW23HLLePvtt+Paa6+NjTbaqNJ5YVdkp512ivz8/OjTp0+cddZZUbdu3XjggQdi3rx50adPn199Lj+1+eabR3FxcVx66aVRrVq1SJIkHnnkkfjnP/8ZEZXPadupU6eoV69eHHnkkXHhhRdGkyZN4plnnolJkybF2WefHRERF154Yfz2t7+NXr16xXHHHRfFxcXxyCOPxIgRI+Luu+/O2t9bb70Ve+6552o/NwDYkJ1wwglRq1atCl9tj1j2tfJTTz01/vznP1faSz799NNxyCGHxOWXX77S41SvXj2GDRsWZ599dixYsCBq164dgwcPjr333jv23nvvrGBs6tSpld4V+8UXX0REVJhvtjJjx46t8O23559/vkrz2v7hD3+Ihx9+OObMmRP16tWLiGWB6ZFHHhlnnnlm9OrVK2bOnBkXXHBBbLXVVtGxY8eV7nO5K664Inr37h177rlnnHTSSbF48eK46qqroqysLOsmhL333jsGDhwYL7/8cpx33nkRsWy+3IiIV199tdI7QFfVkUceGf/7v/8bPXv2jHPOOSfatGkTb731Vlx00UXRt2/fqFu3biacPP744+PII4+MadOmxY033piZCmDevHkrnFbsxwoKCmKnnXaKSy+9NGrXrh0dO3aMDz/8MP72t79lpmNYW3bbbbd47LHHYvDgwbHPPvvEK6+8UuFuYz0qpEiOHoAGpNz111+f1KtXb6XrLX9q6aq+atasmbWfpUuXZv48bdq05J133kneeeedpF69ellPpl3ux0+mrYpFixYlJ5xwQnL99dcn1113XVJUVJQMGzaswnrdunVLzj333GS77bar8rksf9JqZW6++eakfv36yYIFC7LOb9CgQUnz5s2TWrVqJe3atUuuueaazM9g+dNef/ok2J8+7bWsrCy56qqrks033zwpKChIWrVqlZx33nlZx0qSJPn3v/+dRERy+OGHZ8Y++OCDJCKS/v37Z617xBFHJJtuumnW2PL/xj9WWY0vvfRS0q1bt6ROnTpJcXFx8vvf/z557rnnMstnzJiRHH744UnDhg2TwsLC5A9/+EMyfvz4ZODAgUmTJk2SsrKyZPLkyUlEJHfffffP1vWvf/0r6d27d9KoUaOksLAw2XHHHZMxY8Ykq6pbt24VzrcyL730UrL99tsntWvXTjbZZJPkpJNOSr777rukdu3ayeDBgyv9OU2ePDnp27dv0rRp06R27dpJp06dknvuuSdrv++9917Su3fvpLi4OCksLEy233775JFHHsla54cffkgKCgqSf/zjH6t8fgBAtuW9xi95PfTQQ1n7+nE/+uabbyaTJk1KDj744KRLly6VHntV+9dbb701ueyyy5Jbb7012WWXXZLtttuuwjp333130rx582TYsGFVPo8jjjhihcecPn16Urt27Qr9yG233ZZ06tQpqVOnTtK0adPksMMOS7766qvM8ohILrzwwgq1/bRffOWVV5LddtstqV27dlJUVJTst99+yb///e8Kdeywww5JjRo1knnz5mXGdtxxx6RWrVpZYy+99FKFfnxF/eRPa5w6dWryl7/8JWnWrFlSo0aNZIsttkguvfTSZMmSJZl1br755qRt27ZJzZo1k/bt2yfXXXdd5phPPvlkkiQVe/TK6po/f35yxhlnJK1bt05q1aqVbLbZZsk555xToW9fFct7z5/+zpAkK/59oqysLDn33HOTZs2aJbVr10722muv5I033qjwM9SjQjrkJckvfAwhsF674YYb4qKLLqp0Tqsfmz59ekyfPn2V95+fnx/t2rVb4T5btWoVCxcujNatW8c///nPrDtof6nDDjssnnnmmSgrK4v9998/brvttgpf5enevXvssssu8Ze//CUWLFhQpf22atWq0js0IpY9UXizzTaLq6++Ovr37/+rz4ENz1VXXRWPPPJIvPPOO7/6q4AAsKFbsmRJfPbZZ79o2+bNm6/wzsqDDjooRo4cGYWFhXHppZdmvmX1azz66KNx5plnxpQpU2LrrbeOu+++O7bZZpusde65554477zzYtKkSZV+O6wy9erVy3rg6k+dfPLJMWnSpHjhhRd+Vf2s3/SosOYJbQHWsNtvvz1uvvnmeO+996o07xUsV1paGu3atYv7778/evbsmetyAIANwJQpU6Jjx44xduzY2GGHHXJdDimkR4W1Q2gLsBb07t079t133xg0aFCuS2EdMmTIkJg9e3bccsstuS4FANiA/P3vf48bbrihwkOqIEKPCmuL0BYAAAAAIEV8TxcAAAAAIEVyHtpOnz492rRpE+PGjauwbO7cudGuXbu46KKLssbvvffeaNOmTdSpUye6dOniKxsAAOSUnhYAgNUpp6Ht+PHjY+edd47JkydXuvzYY4+Nzz//PGvs5ZdfjuOPPz5GjBgRpaWlcdRRR0Xv3r1jxowZa6NkAADIoqcFAGB1q56rA99zzz1x4YUXxnXXXRcHHnhgheV33nlnTJkyJXbeeees8REjRsShhx4au+22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sK5ZaWh76623xptvvhnffvtt3HjjjXHEEUdEp06d4oADDsh8beyjjz6KvLy8ePPNN+Pf//53dOjQYY0XDgAAVaGfBQBgXbPSOW2XLFkSF198cSRJEptsskkMHz485s6dG9OnT4/XX389kiSJffbZJw477LA488wz48orr1wbdQMAQJXoZwEAWNes9E7bhQsXxmOPPRbz58+P1157LR599NE46KCDonfv3tGmTZuIiPjkk09i7ty5UVhYGBdccEEsXbo0qlWrtsaLBwCAldHPAgCwrllpaNu9e/eIWNbs/uY3v4mmTZtmPZxh8uTJ0bhx42jcuHFERLz11lsaXAAAUkM/CwDAumaloe1ytWrVilq1akVEREFBQWZ80003zVqvXbt2q6k0AABYffSzAACsK6oc2gJsaDo2LI8u816PoqmTc13KBqN03vfxXsPyXJcBALBeaFCwODYq+SQKp8/LdSkbjI1Kvo0GBYtzXQawHhDaAqzAFV0XxS6zb42YnetKNixtu+bFjFwXAQCwHtinyZT4w/87NtdlbHCmNGmZ6xKA9YDQFmAFzhlfMwYOOjKKGm+c61I2GKXTvo87H70nTtsn15UAAKz7npraLJr1OTeabtI816VsMH747tt46t07o2uuCwHWeUJbgBWYNCM/3i3cORo12TLXpWwwps//OCbN+FuuywAAWC/MXFIjZhe3i7qNNst1KRuM2XMLY+aSGrkuA1gP5Oe6AAAAAAAA/ivnoe306dOjTZs2MW7cuMzY22+/HTvuuGPUqVMnWrduHbfffnvWNvfee2+0adMm6tSpE126dInx48ev5aoBAOC/9LQAAKxOOQ1tx48fHzvvvHNMnvzfJ7PPmjUr9tprr+jbt2/MmTMnHnjggRg8eHC88MILERHx8ssvx/HHHx8jRoyI0tLSOOqoo6J3794xY4bH1gAAsPbpaQFWrw9nvhMXvvHn+HDmO7kuBSBnchba3nPPPXHYYYfF0KFDs8Yff/zxqF+/fgwePDgKCgqia9eu0bdv37j77rsjImLEiBFx6KGHxm677RbVqlWLE088MRo3bhyjRo3KxWkAALAB09MCrF5JksSo/9weU+Z/GaP+c3skSZLrkgByImehba9eveKzzz6LAw44IGt84sSJ0blz56yxzp07x6RJk1a4vFOnTpnlAACwtuhpAVavD2a+HV+WfhwR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/hTnnHNO/PWvf11hTxoRcemll8bTTz8dd9xxR9Z4v379onnz5nH44YfH4sWLK932mmuuiZ49e0bDhg1j3Lhx8ec//3mV6wXIFaEtwFp2xhlnZL7atdyP57MtKyursM2XX34Zffr0idq1a8fAgQOjT58+Ua9evejUqVOFubyW31Ewbty4GDlyZLRr167CnLnvvvtuzJ8/Pxo1ahQ33HBD1vaPPfZYTJgwIU444YRYuHBhTJs2LWbMmJG1PQAAG7aDDz44vvvuu6yxH89nW9kzGmbPnh0HHXRQdOzYMQ466KDYeeedY9NNN42DDjqoQo85d+7cOPLII+OWW26JZ555Jho1alRhztyHH3445syZE9ttt12MGzcua/uJEydmvplWVlYWJSUl8eWXX2ZtD5BmQluAHJs/f37WfLY77LBD1vLLLrssNt988ygqKorp06fHIYccEn379o37778/FixYEC1atIi33nors/6cOXOioKAgJkyYEAceeGClc+a2bNkyzj///Ojdu3dWQz116tQ47LDDIiLivPPOi9q1a8cVV1wRc+bMydr+kUceWTs/HAAA1gkTJkzIms928ODBWcuffvrp2H777aNly5bx1ltvxZAhQ6J3795x/fXXx6xZs+L3v/99fP3115n1Fy5cGDVr1owJEybE7rvvXumcufXq1YshQ4bEX/7yl6yHns2bNy8OOeSQqFmzZvTq1SsKCgpi3333jVdeeSVr+3/9619r68cDsMqEtgA5VqdOnUiSJPN67733IiLihhtuiMLCwjj//PNjhx12iK+++irq1KkThx9+ePTr1y+6du0an3/+eRQXF8fvfve7OPzwwyMiYsstt4wPP/wwfvOb38TSpUsjSZJo0qRJ9O/fP3OMvLy82GyzzeKxxx7LNNSLFy+ObbbZJqpXrx577LFHtG7dOpIkifPPPz/q1auX2bZatWo5+1kBAJBO2223XVZPu/zbXOPGjYsddtgh/vSnP8XBBx8cTzzxRBQUFES3bt3ioosuitatW8cLL7wQzZs3j6233jpuu+22iIho1KhR3HbbbbHxxhvHlClTIkmS6N27d9x+++2ZYzRu3DgaN24cJ510UvTo0SMiIpYuXRqHHXZYFBYWxpAhQ+Lwww+PJElizJgx0a1bt8y2m266aa5+VABVIrQFSKnf/va3sdVWW8Xzzz8fzz77bHTu3DluvPHG6N27d2y88cZRp06daNKkSXz33XdxzDHHrPDhCmVlZTF16tQ4+OCDIyKivLw8kiSpME/t0KFDo7S0NCZNmhTFxcVr/PwAAFj/tWnTJn7/+9/HBx98EBdddFEMGjQoXn755fjtb38bDRs2jIKCgigsLIxRo0bF8OHDo169epXup7y8PF577bXMQ8uSJIlZs2ZFo0aNstZ75plnYsqUKfHss89GUVHRGj8/gDVFaAuQUjvttFO88847ccMNN0SXLl1i8uTJ0axZszj77LPjqquuipkzZ8aLL74Y9evXj4EDB8ZNN91U6X5OPvnkqFmzZuy9994REfHZZ59FRFQIbS+88MKYO3dubLbZZpGXl1dhP8vn211+py4AAKxMq1at4tprr40nnngi/vrXv8Yrr7wS9erVi3vvvTeOO+64WLBgQXz22Wex2267RY8ePaJv376V7ufhhx+O5s2bR/v27SMiYubMmbF06dJo0KBB1np77713vPXWW1G/fv1Ke9bl8+0uWbJETwukmtAWIMXOOOOMeOqpp+KKK67IjA0dOjQOOuigqFGjRowZMyaaN28eO+20U6Vzcn366adx2223xdlnnx35+csu+a+//nrk5+dHrVq1VnjcyqZAGDFiRBQUFERExO9+97tfeWYAAGwoHnvssbj44ovj5JNPzoztt99+cd5550W1atViwoQJ0b59+9hpp53i+++/r7D9jBkzMjcuLA9aP//882jatGlUr159hcdd3v/+2BtvvBHVqlWLJEmidevWv/7kANYQoS3AWrL55ptHXl5eJEkSu+++e+Tl5cX//M//xPz58yMvLy/rVVxcHMOHD49rrrkmzjnnnDjwwAMjIqK0tDQWLlwY99xzT+Tn58ett94aZ555ZvzmN7+JP/7xj1nHGzt2bHTo0CG233772H333eOss86Kt956K26++eYVTqWw3MYbbxzNmjXLGjvhhBMiSZJYunRptGrVavX+cAAAWCcceeSRkZeXFzNmzIgtttgi8vLyYv/9948JEyZU6Gl32WWXeO2116J///5x//33R+fOnSPiv9/gGjRoUOTl5cXll18eAwYMiIMPPjgr2I2I+Pjjj2OnnXaKww47LDp06BCjRo2Kr7/+Ov7+97/Htttu+7O1NmrUKFq2bJk1tuuuu0aSJPHdd9+tcCoGgDTIS378iEUAUmXcuHHRvXv3iFj21bIfP1E3IqKwsDBKSkpi4cKF8X//93+x0047xfz586N9+/bxzTffxP777x+PPfZYfPbZZ9GpU6dYsGBB5OXlxRVXXBFnn312lWq44IIL4qabborZs2ev5rMDAGBD8Pnnn0ebNm0iIqJv377xyCOPZC3fcccd480334yysrL4/vvvo1WrVrFkyZLo169fvPjii3H++efHSSedFDNnzozdd989Pvnkk6hTp0488MADsccee1SphqeeeiquueaaGDdu3Oo+PYA1QmgLsB666qqr4rDDDosWLVrkuhQAAPhFnn/++dhxxx09JBfYIAltAQAAAABSxJy2AAAAAAApIrQFAAAAAEgRoS0AAAAAQIoIbQEAAAAAUkRoCwAAAACQIkJbAAAAAIAUEdoCAAAAAKSI0BYAAAAAIEWEtgAAAAAAKSK0BQAAAABIkf8PraAAVk7/lRUAAAAASUVORK5CYII=",
            "text/plain": [
              "<Figure size 1400x600 with 2 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        },
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/339010389.py:42: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp2 = axes[0].boxplot([data_skewed], labels=['偏斜分布'],\n",
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/339010389.py:51: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp3 = axes[1].boxplot([data_skewed], labels=['偏斜分布'],\n"
          ]
        },
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "均值: 99.98\n",
            "中位数: 101.17\n",
            "差异: 1.18\n"
          ]
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABW0AAAJOCAYAAADMCCWlAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAUPJJREFUeJzt3Xmc1QW9P/7XzLAJASIgYqGomHgF15saSoJbml5F3BBxN9dbllo3XMoltQzv9WpXzbhqj9wqA3Nf0kgkTK8boJmW4NcFEVAYQNlmzu8PfkxOMyODAucz8Hw+HvPA89nO+xx6nF685nM+n4pSqVQKAAAAAACFUFnuAQAAAAAA+AelLQAAAABAgShtAQAAAAAKRGkLAAAAAFAgSlsAAAAAgAJR2gIAAAAAFIjSFgAAAACgQJS2AAAAAAAForQFymLp0qWZMGHCZz4GAAAUlcwLwKeltAXK4tlnn83uu++e7bffPhUVFSv8eeihhxocY5999sn//u//Nvkcxx9/fEaMGPGJcyxevDiLFy+ut+z999/P3//+95V6PQ8//HCeeOKJldqHT3brrbeu1N/Dq6++mnHjxjVY/vjjj+eee+5ZhZMBADSPzLt2e+aZZ/LAAw+s1D6333575s+fX2/Z7Nmzc/XVV2fevHmrcjyghVPaAmUxfvz4bLXVVrnnnnvyl7/8ZYU/AwcOrLf/008/nXHjxuXaa6/NfffdlyR54403cu655+a9995r9hzXX399BgwYUG/ZkUcemR/84Acr9XquuOKKujnWhKuvvrpZwf+ffy666KIGx/rWt761wv1uuOGGJme5++67m/38c+bMafQYu+66a374wx/WPS6VSjnrrLPyyCOPNPs9GT16dE466aS88sor9X5uueWW/Od//me9ZW+88UazjwsA8GnJvKvGCy+8sMKcueuuu37iMdZff/1m5dWrr7660f1vuOGG9OnTp96yO+64IxdffHGzX8fLL7+co48+Og888EC9bPrEE0/k29/+dqZMmVJv+T8X7cC6pVW5BwDWTffee2/22WefrL/++mnTps0nbtuuXbt06NCh7vHChQtz+umnZ5999kmvXr1y8MEH57TTTssRRxyRe+65J7/61a+a9TW0WbNm5Uc/+lFOPfXUestPO+20HH/88Zk5c2a6d+/eYL+5c+dm+vTpdY/nzZuXJ598Mscee2xeeeWVJp9v0003zXrrrbfCuc4666y0bds2V155ZZPbHHfccdlvv/0aXTd8+PDMmTMn9957b6qqquqt69atW6P7DBo0KNdff32j67761a9+4rx77713/vKXv3ziNst16tSpWds9/fTTef/999OjR49G39Mtt9yy3msrlUoZO3ZsKioqsvXWWzd6zI8v32mnnfJ///d/TT7/5MmTc+CBB2bSpEnp3Llzs2YGAPhnMm/TmpN5/9nEiROz/vrrN1h+ww035KmnnvrEfZ955pnU1NSs8Dl69OjR7Hkeeuih7LTTTo2+HxtuuGE22GCDest++9vf5vOf/3yOPfbYLFq0qME+/1ysT548Of369Wvy+XfZZZd85zvfyWGHHdbsmYEWpASwhr355pulioqK0sMPP1w69dRTS0k+8efggw+u23fOnDmlfffdt7TBBhuU3nrrrVKpVCo99NBDpQ4dOpTOPPPM0pw5c0r9+vUr7b777qVjjz22dPTRRzc6w5IlS0r77bdfaauttiotWLCg3rqamprSbrvtVhoyZEhp6dKlDfa9+eabVzhzYz/jx49f4XszYcKEUteuXUvvv//+Sryj/3DDDTeUkpQeeeSRZu9z1llnrXD266+//lPN01y77LJL6dJLL617fMYZZ3ziPO+99169/e+7775SRUVF6dVXX623/MUXXyxVVFSUnnnmmZWe6fjjjy+deOKJn+4FAQDrPJm3aSubeZ9//vkVPu8uu+zSrGN9Wtdff31piy22qHv89NNPf+I8V155Zb39Fy9eXNp4441LF1xwQYNj77jjjqV///d/X+mZxo0bV9pwww1Ls2bNWvkXBBSeyyMAa9zPfvazlEqlfOUrX0lFRUUOOuigfPDBB43+fP3rX6/b7w9/+EP+9V//NU888USuu+66zJs3L6+88ko23XTTXHfddampqUnnzp1z6623Zv/9909FRUWjz7948eIceeSR+fOf/5xf//rXad++fb31lZWVuemmm/LEE09k6NCh+fDDD+utP/7441MqlVIqlbJ06dJsvvnmueqqq1IqlfLLX/4y//3f/123/uM/u++++wrfm//4j//IGWeckS5duqz0+/rCCy/k3HPPTZJ86UtfysKFC5u976BBg5r8mt4mm2yy0rM019SpUzNlypR89NFHee+99zJlypS8+uqrufnmmxt9H1988cUkqXeWbW1tbS655JLsu+++2XLLLfPkk0/Wfb1tu+22S6lUype+9KW6ZYMGDWrWbN/97ndzyy235NVXX10dLx0AWMvJvE37tJl34sSJjebVs846a6WOszLmzJmTKVOm5J133snixYszZcqUvPXWW7nsssuy4447pra2tsF7sMMOOzT4xtvPfvazvPPOOznzzDOTJH369KnLp88991x++tOf1rtMw7Rp01Y42x577JHevXvnv/7rv1bHSwfKTGkLrFFz5szJNddckyRp1apVKioqsnDhwrz77ruN/nw8PP79739P//79UyqVMmzYsGy99dZ1P5MmTcq//du/5Wc/+1m23XbbnHfeeY0+/6uvvpoBAwbkiSeeyKOPPpptt9220e2++MUvZty4cZk0aVK23HLL3HHHHY1ud8stt+T999/PySefnCR56qmn8vjjj3+q9+aJJ57IhAkTcvzxx6/0vn//+9+z3377ZcMNN0ySPP/88+nRo0e+853v5KOPPvpU8zTHqFGjVvq6uh8PoJdddllGjBiRv/3tb/nNb36T4cOHZ6+99somm2yS0047rcnn/XgIvu666/L00083uPTDiy++2CDQf9Ix/9nWW2+dXXfdNVdddVXz3xAAgMi8n+SzZN5PY9asWZ/pPhBPPPFERowYkZtvvjkzZszIiBEjsv/+++fee+/NVVdd1WRp/vG8+vbbb+f8889PUv9yZRdddFGDvPrwww+v1Os7+eSTc91112XBggUrtR9QfK5pC6xRI0eOTHV1dd3jioqKPPLII01ehzRJDj744CTLAsnyoJgk++23X/r165dRo0YlSX7xi1/kP/7jP/LEE0/k1ltvbfRYM2bMyAYbbJCxY8fm61//+ieGoo033jgvv/xyzjnnnLRu3brB+rfffjvnnntujj322Lzzzjt55513MmfOnMyfP7/eda3atWuX3r17N/k8y/3qV7/Kdtttl80333yF237c+PHjc+SRR2a77bbLSSedlCOPPDI77LBD7rjjjpx22ml54IEHMnbs2Hzxi19s8hjjxo37xL+Dppx44ok58MADGyw/9thjs/XWW2fkyJEN1n3+85+v++/Ro0cnWXYjsgMPPDDHHntsTjjhhGy88cZp27Ztvf3OP//8uut1LQ/BTz75ZM4999x07dq1wfN85StfabBs4cKFK7xJxccdeOCBGTVqVK677roGZ0sAADRF5m3ap828SfLlL3+5yXW77LJLo8u7dOnS6P0Xxo4dmyuuuCJPP/10g3UfL1YPOuigHHTQQbnhhhsyatSovPDCC/nmN7+ZffbZJ4MHD6633+c///m89dZbqa2trcuOH330UYYMGdLoe/vjH/+4wVmytbW1Tb7Gxhx44IE55ZRT8sgjj+SQQw5ZqX2BYlPaAmvMiy++mBtuuCGnnXZabrjhhrrlhx56aH7yk580ejH+5Wpra1NZWZkPPvig7gYCS5YsyUcffZRZs2YlSQ4//PBst9122X333evObPhnAwcOzCOPPJJkWWE4f/781NTUZPvtt89PfvKTupt7/c///E8effTRdO7cua5Y/LiFCxdm6NChqa2tzTXXXNPg+T4eyLfbbru88MILK3x/Hnrooey5554r3G65jz76KFdeeWV++MMfZsSIEbnxxhtz//33163/2te+lkmTJuXII4/MbrvtlgceeCBf+tKXGhzn6quvztVXX5233347zz77bN1X9x577LEcdNBBn3jTjA022KDuBgsXXHBBhg0bln79+qV9+/bp0qVL+vbtmyuvvDI777xzsy5LsMkmm+Sxxx7LrFmz6s5GWK5bt26ZOnVqkmVnrCTL/h4uueSSvPzyy1m6dGm97d999920a9eu3rILLrggTz755ArnWG633XbLeeedlz//+c8NbgwBANAYmfeTrWzmTZLtt98+pVIpSXL33Xdn5513zsYbb5xHH300m2666SeenFBVVZW+ffsmSR5++OG8/vrrOf3009OzZ89UVlamb9++efbZZ3Pvvffm+9//fiorV/yF5GuuuSZLlizJKaecUm/58mJ2yZIldXl13rx5+fKXv5yRI0fm0EMPrbf9f/7nfzb4Jtjf/va3bLnlliucYbmePXtms802y4MPPqi0hbWMyyMAa8x2221Xd1bochUVFamsrMz+++9f76tf//yz/EyFHXbYId27d0/37t3z+OOP57rrrqt7fPnll2f77bfP//zP/9T91vvDDz/MU089lbfeeqvBPF/4whfSt2/fVFVVZenSpdlzzz3Tt2/f9O3bN61bt07Hjh0bfR01NTU59thj8/bbb+eSSy5Jhw4d6q5fdeaZZ+bggw+ue/yTn/ykWe9NTU1Npk2b1uwzDh566KFstdVW+c///M+MHj06N998c6O/vV9//fVz7733ZuDAgdlvv/3y0ksv1a37zW9+k8MPP7zuHwQTJ07Msccem2TZ1/IOP/zwuvf9j3/8Y4MzCT5uypQp+dGPfpQ5c+bUW75kyZI8//zz2XffffPAAw8067Ulywra5X8Xy3822GCDun/kLA/Be++9d7773e82eoz11luvwVfdLrvssmbPkCRbbLFFknziHZIBAD5O5m3aymbeGTNmZODAgfXOlB0xYkTd2bHf/va3c88999Qde8CAAXnmmWcaPVapVMpFF12UZ599tsG6119/PT/60Y9y3HHH1ZXDK9K6desGeXWLLbZIbW1tFi1aVJdXN9xww1xzzTV1Jzp83Omnn94gr65MYbvcFltsIa/CWkhpC6xR/3xjgo8++ijrrbdekuTaa6/NAQcckDPPPDOXXnppdtlll0ycOLHe9s8//3zGjRuXV155JXvuuWfOOOOM/OY3v8n06dOz22675eqrr86ECRNy5pln5q677srYsWMzYMCARr/2tNyjjz6abt26pV+/fnXL3n///XTv3r3BtrW1tTnuuOPyyCOP5P7770/Pnj0/y9tRZ9asWamtrc3666/frO032WST7LnnnnnllVdy3HHHfeK2bdq0yR133JF99903S5YsqVu+yy67ZPz48TnnnHNW+Hw/+MEPsvHGGze6rqamJieddFK++tWvNvj7bd26dW6//fYMHz48hx12WCZPntzkc5RKpfz+97+v9zW/Dz/8MPfee29OPvnkbLfddlm4cGEqKirqQvAnmTZtWqZPn17v51vf+tYK9/u45V+Ne/fdd1dqPwBg3SbzNm5lM2+PHj3Sq1evfO1rX8sHH3zwidv+8pe/rLs2b2N++tOfZtKkSbngggsarDv88MNzzz335Fe/+lW+//3vf+LzTJs2rcE2zz//fC655JLssMMOefTRR7Nw4cJP/Lbacj/+8Y8b5NV//t9Cc3Tr1k1ehbWQyyMAZTV37tz06NEjybLfpC9YsCBz5sxJq1atsnDhwrzxxhv1tu/SpUt++tOfpnXr1mndunVqamry3e9+N7vvvnuqq6szbdq09O3bN3vttVdqa2vTtWvX3H777fnc5z7X5Aw33XRTDj/88HpfhXrvvfey0UYbNdi2srIyAwcOzBlnnJHtttsur7322ip5H5Zfv3XhwoXN2v5f/uVfcsstt6zU8f/5xhKbbLJJfvWrX2XQoEH5t3/7tyb3veWWW/KnP/0pkyZNanT9d77znbz66qv5zW9+0+j6ioqKjB49OlOnTs2wYcPy3HPP1bte7f/93/9lxowZ+eEPf5gk+frXv54PPvggDz74YP7whz+ktrY2e++9d84///wsWLCgwSUPmtKqVasG5W5zvu72cctL7n++vi4AwMqQeZdZ2cybLJt7xx13zDe/+c388pe/bHSbd955J+eff36+/e1vN1oIP/PMM/nOd76TK6+8ssnr7u6777756U9/mtNPPz1777139thjj7p17733Xp555pm88cYb2WKLLfLFL34x22+/fR588ME8+OCDefvtt7PNNtvkiCOOyL/+6782O7NWVVU1yKuf5j4KS5YskVdhLaS0Bcrq73//e3beeeckqSvtPm7YsGH1Hj/77LMZM2ZMHn744YwaNSqf+9zn8tvf/jY777xz7rvvvnz1q1+t23batGlZunTpJ4bXO+64Iy+//HJ+/etf11v+5ptvZqeddmp0n1NPPbXuv5u6W+zixYtTKpUyd+7cZgWv9ddfP+utt17dtcrWlD322CN77713LrjggkbPuP3Tn/6UU089NRdffHHdtcA+7r//+79zzTXX5N57780mm2zS5PO0atUqv/zlL9OvX79ceeWVufDCC7No0aLsuuuueeGFF9K/f//8+Mc/zjHHHJNx48bllFNOyX777Zdbbrkl+++/fzp16pRk2Y03Punv8+O+8IUvNPmam2v27NlJ0ug/ZgAAmkvmXebTZN527drl/PPPzzHHHNPgngfJsgL44IMPTteuXRs9i/avf/1rDj744AwdOjTf/OY3P/G5TjnllDzwwAM57bTTMmnSpLRu3TqXX355vv/976djx4455ZRTctJJJ2XLLbdMv379summm+ass87KkCFD6s7wra2tTXV1dbMy67nnnptzzz23me9E02bPni2vwlpIaQuUzbx58zJlypRss802SZZ9Veyhhx5K7969s9FGG+W+++7L1VdfXXeX2LfeeiuHH354DjvssOy99951d9DdYYcdMmTIkPzP//xPvQC7IpMnT87pp5+e888/v97XqBYvXpzXXnstW2211QqP0VSAnT59et1v8f/5BgVN2XnnnZt184ZV7Yc//GHeeuutRq/f1adPn4waNSr//u//3mBdTU1Nfve73+Wmm27K/vvvv8Ln2WSTTXL++efXhfS2bdtm1KhR6dSpU70bpB166KEZMmRIo8F/2rRpTZax/+yjjz76zDciW345h6b+MQMAsCIyb32fJvMOGzYsb775ZqOX62rTpk1OPfXU7LPPPo2ebTp+/PjssMMOzf6W2tVXX53DDz88H3zwQTbccMOcfPLJ2WyzzXLIIYfUy5avv/56o3n1zTffTG1tbbMy6/XXX/+Zb0SWLLu/xEknnbRS+wDFp7QFyubuu+9Oq1atMmjQoAbr2rRpkw8++CB/+9vfkiz7mtBDDz2UTTfdNFdccUVee+21vPvuu+nfv3+S5LDDDmvw9f9P8utf/zqnnHJKDj744Fx44YW5884788Ybb2TAgAF57rnnsmjRogwYMGCFx+natWvdWRMft+mmm+bVV19NRUVFNttss2bNtP/+++dHP/pRampqPtXXolbGLbfckhNOOKHRdR8P5cv/cfHxsxKmT5+ejTbaKFVVVfn9739f9xW7+fPn5+WXX07btm3zzjvvNFp0fve73613/L322qvRGT7++r/73e+mR48eadeuXW688cYcddRRTb6uww47LL/97W+TpO66cU29xptvvjnHH398k9sky8403nLLLRs9yxgAoDlk3vpWJvP+c1k8cuTIJMkhhxxSt+w//uM/Gux3xRVX5Hvf+16S5OSTT86JJ55Yl1lfeOGFtGrVKi+++GKjz9+7d+88/fTTdc+94YYbNpo/P77vXXfdlSlTpqRnz5554IEH0qNHj7oc/c/uu+++uvlPP/30nH766Y1ut9lmm2WPPfbIuHHjGl2/3KuvvppZs2bloIMO+sTtgJZHaQuUTceOHXPRRRelQ4cOadWqVSorK3P66aenY8eO+cpXvpJu3brlG9/4RoYOHZqOHTvm5JNPzsknn5ynn346X/7yl7PBBhvUlX5HHHFEvTv0NuX111/PEUcckZdeeimXXHJJzj333LqQOWrUqFx++eWpra3Nd77znWbd1XaPPfbI448/3ui6lf0N+XHHHZcf/OAHefjhh/O1r31tpfZdWYccckh23XXXT7Xvx29W8fFrorVt2zaHHHJIpk+fnh49euTggw9usG9TZ2msyJVXXpn58+dnr732avRrcctdc801jX7lsDEruqFGqVTK7bffnjPOOGOlZgUA+DiZt76Vybx/+ctfVurYy2244Yb1Hn88s95222256qqr0qZNm5x55pmN7r+ymXWjjTbKyJEj8+abb2bTTTfN7bff3mQhPXjw4Ga/rvbt269wm1tvvTXbbLNN3ZnawNqjotTY92EB1mLXX399DjrooHz+858v9ygNnHbaaZkxY0bGjh1b7lHWeQ8++GCOOeaYTJs2rdnX0QUAKAqZd+23ePHi9OnTJz/5yU+aVeYDLYvSFqBAZs6cmf79++eBBx7IjjvuWO5x1lmlUik77rhjzjrrrBVeQgEAgJUj864a//Vf/5V77rknjz/++Kf+RhtQXJUr3gSANaV79+65+eab8/TTT5d7lHXayy+/nK9+9asKWwCA1UDmXTXeeOON/O///q/CFtZSzrQFAAAAACgQZ9oCAAAAABSI0hYAAAAAoECUtgAAAAAABdKq3AOUQ21tbd5555107NjRBbsBAFqQUqmUefPmZeONN05l5bp7/oE8CwDQMjU3z66Tpe0777yTXr16lXsMAAA+pTfffDNf+MIXyj1G2cizAAAt24rybNlL21mzZmXnnXfOTTfdlEGDBtVbN3/+/Oy4444ZPnx4Lrroorrlv/jFL3LxxRfn3XffTd++fXPttddmt912a/ZzduzYMcmyN6dTp06r4mUAALAGVFdXp1evXnV5rijWdKaVZwEAWqbm5tmylrYTJkzICSeckKlTpza6/rTTTsvrr79eb9kf//jHnHnmmbnnnnuyxx575LrrrssBBxyQv//97+natWuznnf5V8g6deok5AIAtEBFuiRAOTKtPAsA0LKtKM+W7UJgt9xyS4YPH54rrrii0fX/+7//m3fffTcDBgyot3z06NE56qijsueee6aqqirf+MY30r1794wdO3ZNjA0AAHVkWgAAVoeynWm73377ZcSIEWnVquEIL7/8ci699NJMnDgxRx11VL11kydPzkknnVRvWf/+/TNlypQmn2vRokVZtGhR3ePq6uoky27gUFtb+1leBgAAa1DRstuayrTyLADA2qG52a1spe1GG23U6PKPPvoow4YNy3XXXZeePXs2WD9v3rx06NCh3rIOHTpk/vz5TT7XFVdckYsvvrjB8pkzZ2bhwoUrOTkAAOUyb968co9Qz5rKtPIsAMDaobl5tuw3Ivtn3/jGN7L33nvna1/7WqPrO3bsmAULFtRbtmDBgnTr1q3JY44cOTJnn3123ePlF/zt3r27a4ABALQg7dq1K/cI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WYB/UNoCrAXGjBmTww47LP3798/EiRMzb968TJw4Mf37989hhx0m6AIAUGjyLEB9FaVSqVTuIda06urqdO7cOXPnzk2nTp3KPQ7AZ1JTU5M+ffqkf//+ufvuu1NZ+Y/fx9XW1mbIkCGZMmVKXnvtNV8tA1o8OW4Z7wOwNpFngXVJc3OcM20BWrjx48dn2rRpOe+881IqlTJu3LjccccdGTduXEqlUkaOHJmpU6dm/Pjx5R4VAAAakGcBGnIjMoAWbvr06UmSv//97znqqKMybdq0unW9e/fOD3/4w3rbAQBAkcizAA050xaghevZs2eS5Jhjjmn0GmDHHHNMve0AAKBI5FmAhlzT1jXAgBZu8eLF6dChQ7p27Zq33norrVr940sUS5cuzRe+8IXMnj07CxYsSJs2bco4KcBnJ8ct430A1ibyLLAucU1bgHXEn/70pyxdujQzZszI0KFD652ZMHTo0MyYMSNLly7Nn/70p3KPCgAADcizAA0pbQFauOXX9rr11lszefLkDBgwIJ06dcqAAQMyZcqU3HrrrfW2AwCAIpFnARpyIzKAFm75tb222GKL/O1vf8v48eMzffr09OzZMwMHDszTTz9dbzsAACgSeRagIde0dQ0woIWrqalJnz590r9//9x9992prPzHlyhqa2szZMiQTJkyJa+99lqqqqrKOCnAZyfHLeN9ANYm8iywLnFNW4B1RFVVVa666qrcd999GTJkSL1rgA0ZMiT33XdfRo0aJeACAFBI8ixAQy6PALAWGDp0aO66666cc845GTBgQN3yzTbbLHfddVeGDh1axukAAOCTybMA9bk8gq+TAWuRmpqaBtcAc0YCsDaR45bxPgBrK3kWWNs1N8c50xZgLVJVVZVBgwaVewwAAPhU5FmAZVzTFgAAAACgQJS2AAAAAAAForQFAAAAACgQpS0AAAAAQIEobQEAAAAACkRpCwAAAABQIEpbAAAAAIACUdoCAAAAABSI0hYAAAAAoECUtgAAAAAABaK0BQAAAAAokFblHgBgXfPhhx/mlVdeWW3H/+ijjzJt2rT07t0766233mp5jr59+6Z9+/ar5dgAABTf6sy0ayLPJjItUGxKW4A17JVXXslOO+1U7jE+k2effTY77rhjuccAAKBMZFqA1UtpC7CG9e3bN88+++xqO/5f/vKXjBgxIrfeemu23nrr1fIcffv2XS3HBQCgZVidmXZN5NlEpgWKTWkLsIa1b99+jfxGf+utt3bmAAAAq8WayLTyLLAucyMyAAAAAIACUdoCAAAAABSI0hYAAAAAoECUtgAAAAAABaK0BQAAAAAoEKUtAAAAAECBKG0BAAAAAApEaQsAAAAAUCBKWwAAAACAAlHaAgAAAAAUiNIWAAAAAKBAlLYAAAAAAAWitAUAAAAAKBClLQAAAABAgShtAQAAAAAKRGkLAAAAAFAgSlsAAAAAgAJR2gIAAAAAFIjSFgAAAACgQJS2AAAAAAAForQFAAAAACgQpS0AAAAAQIEobQEAAAAACkRpCwAAAABQIEpbAAAAAIACUdoCAAAAABRI2UvbWbNmZfPNN8+4cePqlj3zzDPZeeed0759+/Tu3Ts33nhjvX1+8YtfZPPNN0/79u2z4447ZsKECWt4agAA+AeZFgCAVamspe2ECRMyYMCATJ06tW7ZBx98kP333z/Dhg3L3Llzc9ttt+Xss8/OY489liT54x//mDPPPDOjR4/OvHnzcsIJJ+SAAw7I7Nmzy/UyAABYh8m0AACsamUrbW+55ZYMHz48V1xxRb3lY8aMSZcuXXL22WendevW2W233TJs2LDcfPPNSZLRo0fnqKOOyp577pmqqqp84xvfSPfu3TN27NhyvAwAANZhMi0AAKtDq3I98X777ZcRI0akVav6I0yePDnbbrttvWXbbrttbrrpprr1J510Ur31/fv3z5QpU5p8rkWLFmXRokV1j6urq5MktbW1qa2t/UyvA6Boln+u+YwD1kZF+1xbU5lWngXWJfIssDZr7uda2UrbjTbaqNHl8+bNS4cOHeot69ChQ+bPn9+s9Y254oorcvHFFzdYPnPmzCxcuHBlRwcotPfff7/uz/fee6/M0wCsWvPmzSv3CPWsqUwrzwLrEnkWWJs1N8+WrbRtSseOHfPmm2/WW7ZgwYJ07Nixbv2CBQsarO/WrVuTxxw5cmTOPvvsusfV1dXp1atXunfvnk6dOq3C6QHKb4MNNqj7c8MNNyzzNACrVrt27co9QrOs6kwrzwLrEnkWWJs1N88WrrTdZptt8sADD9RbNmnSpPTr169u/eTJkxusP+CAA5o8Ztu2bdO2bdsGyysrK1NZWdZ7sQGscss/13zGAWujlvK5tqozrTwLrEvkWWBt1tzPtcJ9+g0dOjTvvfderrvuutTW1ubxxx/PnXfeWXfNrxNPPDF33HFHnnrqqSxZsiSjRo3K+++/n6FDh5Z5cgAAWEamBQDgsyhcadu1a9fcf//9GT16dDp06JCTTjop1157bQYNGpQk2WuvvXLVVVdl2LBh6dSpU371q1/lwQcfTJcuXco7OAAA/P9kWgAAPotCXB6hVCrVe7zbbrvlueeea3L7U045JaeccsrqHgsAAJpNpgUAYFUp3Jm2AAAAAADrMqUtAAAAAECBKG0BAAAAAApEaQsAAAAAUCBKWwAAAACAAlHaAgAAAAAUiNIWAAAAAKBAlLYAAAAAAAWitAUAAAAAKBClLQAAAABAgShtAQAAAAAKRGkLAAAAAFAgSlsAAAAAgAJR2gIAAAAAFIjSFgAAAACgQJS2AAAAAAAForQFAAAAACgQpS0AAAAAQIEobQEAAAAACqRZpW2pVMr3v//9FW5XVVWV2trazzwUAACsSvIsAAAtSavmbFRbW5vLLrssl1xySY499thGtymVSqt0MAAAWFXkWQAAWpKVujxCTU1Nbr311rRr1y7t27fP3Xffnd122y0PPvhgdt9999U1IwAArBLyLAAALUGzStupU6cmSSoqKpIke++9d/bZZ5+0a9cup556ajp27JhTTz3V2QkAABSSPAsAQEuywtL2/fffz5e+9KUkyWGHHVYXdAEAoCWQZwEAaGlWWNpusMEGmTlzZkqlUnbZZZc1MRMAAKwy8iwAAC1Nsy6PUFFRkYqKipx77rkplUpZvHhxFi5cmCT58MMPUyqV8uGHH67WQQEA4NOSZwEAaElarczGy79K9vE77n7uc5+r+9NXzQAAKDJ5FgCAlqBZpe3zzz+fz33uc6msrExtbW2T21VWNuvEXQAAWKPkWQAAWpIVlraLFy/Occcdl5qamhx99NE5+uij685G+Gc/+clP8uSTT+YrX/nKKh8UAAA+DXkWAICWZoWlbZs2bfLSSy/lL3/5S6699toMHTo0S5YsydZbb53WrVs32P62227Lc889t1qGBQCAlSXPAgDQ0jT7mrZbb711rrvuupx11lk54YQTsuWWW+YXv/jF6pwNAABWGXkWAICWYqVuRJYkW221Vf74xz9m/Pjxja6fMWNGevTo8ZkHAwCA1UGeBQCg6FbqTgutWrXK1KlT07p16+y5554N1p933nk5/PDDV9lwAACwKsmzAAC0BCt1pm1tbW323XffzJgxI9tss0123333HHXUUdlxxx1z8cUX5+c//3meeuqp1TUrAAB8JvIsAAAtwUqVthUVFXnttdeycOHCTJ48OQ899FCGDh2aDz/8MG3atMlTTz2VLbbYYnXNCgAAn4k8CwBAS7DC0vaqq65KqVTKJptskiSZOnVqpkyZkueffz5jx45N27Ztc+ihh+aXv/xlxo4dm3PPPXe1Dw0AAM0lzwIA0NKssLStrKzM//t//y+PP/54OnbsmD59+qRbt2658MILc8cdd6Rv375JklNOOSVf+cpX0rdv3xx44IGrfXAAAGgOeRYAgJZmhaXtiSeemMrKysyePTvjx49Pjx498uMf/zjnn39+5syZkwsuuCDJsrvwjh49OqeddlqmTZuWVq1W6soLAACwWsizAAC0NJUr2uChhx7KjjvumD/84Q/5+c9/nldffTX/8i//kp///Oc5/PDDU1VVlf/3//5fkmTu3Lm57LLLBFwAAApDngUAoKVZYRo98sgj89e//jUvvfRSSqVSxo8fn5tvvjnt27dPkpRKpWy33XbZf//988gjj+QPf/jDah8aAACaS54FAKClWWFp+6UvfSkVFRWZO3du3n333SxcuDCDBg3KZZddln322ScVFRX529/+lu233z6DBw9O//7918TcAADQLPIsAAAtzQpL2xtuuCFPPfVU3n777fz3f/93jjvuuPTv3z+HHnpo3dfGXnnllVRUVOSpp57KSy+9lG222Wa1Dw4AAM0hzwIA0NKs8Jq2S5YsycUXX5xSqZSNN9441113XebPn59Zs2blT3/6U0qlUg488MAMHz483/3ud/PjH/94TcwNAADNIs8CANDSrPBM24ULF+a3v/1tPvzwwzz55JP59a9/ncMPPzwHHHBANt988yTJq6++mvnz56dDhw75/ve/n5qamlRVVa324QEAYEXkWQAAWpoVlraDBg1Ksizsbr/99unRo0e9mzNMnTo13bt3T/fu3ZMkf/7znwVcAAAKQ54FAKClWWFpu1y7du3Srl27JEnr1q3rlm+66ab1tvviF7+4ikYDAIBVR54FAKClWOE1bQEAAAAAWHOUtgAAAAAABaK0BQAAAAAoEKUtAAAAAECBKG0BAAAAAApEaQsAAAAAUCBKWwAAAACAAlHaAgAAAAAUiNIWAAAA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89IBAFhLyLQAa44zbQHWgJ133jm/+93vsv766ydJKioqsmTJklRUVGS99dZLVVVV2rVrl1atWqVNmzb51re+lSTZaqutst566+WrX/1qJk2alPXWWy/rrbdeHnnkkfz4xz/OkUcemSSZOXNmHnjggSRJt27d8rOf/Sw9e/bMu+++m1KplAMOOCA33nhj3dfVunfvnu7du+eb3/xmBg8enCSpqanJ8OHD06FDh4wcOTJHH310SqVS7r333uyxxx51+2666aZr/P0DAKD8ZFqANUdpC7AGtGnTJrvuumvd44ULF2a99dZLkvzud7/L1ltvnWuuuSYHH3xwvve979VtN23atNx+++357W9/m+222y433XRT3n333fz5z3/O17/+9fzkJz/Jj370o4wdOzajRo1q9Llra2vz5JNPZvfdd0+SlEqlfPDBB+nWrVu97R5++OG8++67eeSRR9KxY8dV/RYAANDCybQAa47SFqAMZs+ena5duyZJvvrVr+all17KqaeemjFjxuTSSy+tt93pp5+euXPnJklee+21DBkyJG3bts3Xvva13HjjjTnzzDNzyimn5PHHH2/0ue688858/vOfT9++fZMk77//fmpqarLBBhvU2+5rX/ta/vznP6dLly6pqKhocJylS5emtra27mwKAADWbTItwOqjtAUog5deeilbbLFFkuTRRx/NNttsk5///Oc59NBD84Mf/CDJsrMHTj311AwdOjSbbbZZkmV3z/3ggw/yL//yLzn++OOz6667fuIZBLNnz873vve9XHnllXWh9PXXX0+PHj3SqlXTlzWvrGz4fw8TJ05MVVVVSqVSevfu/WlfOgAAawmZFmD1UdoCrGFz5szJU089lQEDBjRYV1NTk0WLFqWioiJ33313pk6dmssvvzyzZs1KklRVVeW4447LCy+8sMLn+etf/5ovf/nLGT58eLbZZpuMHTs2b775Zn7zm99khx12+MR9u3Xrll69etVbNnDgwJRKpbzzzjvp3Llz818wAABrHZkWYPVq+ldSAKwW77zzTs4888x07949VVVV6d27d775zW/mmGOOyV//+teMHj06N954Yw455JAcfPDBueiii3L55ZfntNNOS5Kcc845adOmTZPHX7JkSUaMGJHHH388F154Yb75zW/m/fffz6WXXppXX3017du3z2233faJMx5xxBE54ogjVunrBgBg7SHTAqxeFaVSqVTuIQD4ZKVSaaWuufX73/8+O++8czp16rQapwIAgOaTaQGaT2kLAAAAAFAgrmkLAAAAAFAgSlsAAAAAgAJR2gIAAAAAFIjSFgAAAACgQJS2AAAAAAAForQFAAAAACgQpS0AAAAAQIEobQEAAAAACkRpCwAAAABQIEpbAAAAAIAC+f8Azd4eq6BzuKkAAAAASUVORK5CYII=",
            "text/plain": [
              "<Figure size 1400x600 with 2 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        },
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "\n",
            "偏斜数据：\n",
            "均值: 68.29\n",
            "中位数: 62.48\n",
            "差异: 5.81\n",
            "注意：偏斜数据中，均值和中位数差异较大，显示均值有助于理解数据分布。\n"
          ]
        }
      ],
      "source": [
        "# 示例 6：showmeans 参数对比\n",
        "np.random.seed(42)\n",
        "# 创建偏斜分布的数据\n",
        "data_skewed = np.random.exponential(scale=2, size=100) * 10 + 50\n",
        "data_normal = np.random.normal(100, 15, 100)\n",
        "\n",
        "fig, axes = plt.subplots(1, 2, figsize=(14, 6))\n",
        "\n",
        "# 不显示均值\n",
        "axes[0].boxplot([data_normal], labels=['正态分布'], patch_artist=True)\n",
        "axes[0].set_title('不显示均值 (showmeans=False)', fontsize=12)\n",
        "axes[0].set_ylabel('数值', fontsize=10)\n",
        "axes[0].grid(True, alpha=0.3, axis='y')\n",
        "bp0 = axes[0].boxplot([data_normal], labels=['正态分布'], patch_artist=True)\n",
        "for patch in bp0['boxes']:\n",
        "    patch.set_facecolor('lightblue')\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "# 显示均值\n",
        "bp1 = axes[1].boxplot([data_normal], labels=['正态分布'], \n",
        "                      patch_artist=True, showmeans=True)\n",
        "axes[1].set_title('显示均值 (showmeans=True)', fontsize=12)\n",
        "axes[1].set_ylabel('数值', fontsize=10)\n",
        "axes[1].grid(True, alpha=0.3, axis='y')\n",
        "for patch in bp1['boxes']:\n",
        "    patch.set_facecolor('lightblue')\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "plt.tight_layout()\n",
        "plt.show()\n",
        "\n",
        "# 计算均值和中位数\n",
        "mean_val = np.mean(data_normal)\n",
        "median_val = np.median(data_normal)\n",
        "print(f\"均值: {mean_val:.2f}\")\n",
        "print(f\"中位数: {median_val:.2f}\")\n",
        "print(f\"差异: {abs(mean_val - median_val):.2f}\")\n",
        "\n",
        "# 示例 7：偏斜数据中均值和中位数的差异\n",
        "fig, axes = plt.subplots(1, 2, figsize=(14, 6))\n",
        "\n",
        "bp2 = axes[0].boxplot([data_skewed], labels=['偏斜分布'], \n",
        "                      patch_artist=True, showmeans=False)\n",
        "axes[0].set_title('偏斜分布（不显示均值）', fontsize=12)\n",
        "axes[0].set_ylabel('数值', fontsize=10)\n",
        "axes[0].grid(True, alpha=0.3, axis='y')\n",
        "for patch in bp2['boxes']:\n",
        "    patch.set_facecolor('lightcoral')\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "bp3 = axes[1].boxplot([data_skewed], labels=['偏斜分布'], \n",
        "                      patch_artist=True, showmeans=True)\n",
        "axes[1].set_title('偏斜分布（显示均值）', fontsize=12)\n",
        "axes[1].set_ylabel('数值', fontsize=10)\n",
        "axes[1].grid(True, alpha=0.3, axis='y')\n",
        "for patch in bp3['boxes']:\n",
        "    patch.set_facecolor('lightcoral')\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "plt.tight_layout()\n",
        "plt.show()\n",
        "\n",
        "mean_skewed = np.mean(data_skewed)\n",
        "median_skewed = np.median(data_skewed)\n",
        "print(f\"\\n偏斜数据：\")\n",
        "print(f\"均值: {mean_skewed:.2f}\")\n",
        "print(f\"中位数: {median_skewed:.2f}\")\n",
        "print(f\"差异: {abs(mean_skewed - median_skewed):.2f}\")\n",
        "print(\"注意：偏斜数据中，均值和中位数差异较大，显示均值有助于理解数据分布。\")\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "### 2.4 showfliers 参数：显示异常值\n",
        "\n",
        "`showfliers` 参数控制是否显示异常值。异常值是超出 1.5×IQR 范围的数据点。\n",
        "\n",
        "**基本语法**：\n",
        "```python\n",
        "plt.boxplot(x, showfliers=True)  # 显示异常值（默认）\n",
        "plt.boxplot(x, showfliers=False)  # 不显示异常值\n",
        "```\n",
        "\n",
        "**说明**：\n",
        "- 异常值用圆点或叉号标记表示\n",
        "- 异常值可能是有用的信息，也可能是数据错误\n",
        "- 在某些情况下，隐藏异常值可以让图表更清晰\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 8,
      "metadata": {},
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/3408625094.py:12: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp1 = axes[0].boxplot([data_with_outliers], labels=['包含异常值'],\n",
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/3408625094.py:22: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp2 = axes[1].boxplot([data_with_outliers], labels=['包含异常值'],\n"
          ]
        },
        {
          "data": {
            "image/png": "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kJm2dSUsLOycwXGLFi0UFBSknTt3KigoyNGenJysESNGqKio6Kz7W61WvfHGG5We4bB27Vrt2LFDr776qiRpwIAB2rRpk1OfM58DUZNvVa1evVp79uzRJ598ctZ+ZnH48GGFhIToT3/6kyRVCm3/+LuBWZht/H0mxr/A+WFNWwAXzVdffVUn641ZLKdvXX5+furSpUu1r0aNGmnz5s1q2rSp0/6NGjVSQECAbrvtNrVv377a1/z589WsWbNK5581a5Z+/vlnBQQEONoCAgK0d+/eSq+77767Rp/Nm2++qfLycg0ZMsTRlpubq/Hjx6tVq1Zq0qSJbrzxRr377ruV9v3yyy8VHh4ub29vXXnllZoxY4bKysoc2+12u1544QVdc8018vT0VNu2bfXYY4+puLhY0umZKD4+PiopKXHs87e//U1ubm7atWuXo23RokVq1KiRhgwZ4niYRYcOHaocqG/ZskVubm5OX2nLzMxUZGSk/Pz85OfnpyFDhui7776rtM+bb76pK6+8UgEBAdq8efM5P4fx48ef9b+h2n6t7umnn1anTp2UmJgoX19fdezYUXl5eY6vw51p8eLFcnNzc/r6WFpamvr06SOr1apmzZpp7NixlR7Y8cADD2jVqlVO1w8AAC7cF198oWHDhqlt27aSpHXr1qlVq1Z6/vnnVV5eXm/nfeihh2o9zq2KxWJRaWmpOnbseNZx7vr161VYWFhplnGTJk20d+/es45x27dvrxMnTshqtTrtW1BQoIceekiSnMa5999/f6Ux7h+DzLOZM2eO/vKXvzjNCt68ebNuvfVWNWnSRIGBgYqKitJPP/1Uad+kpCS1b99e3t7euvHGG7V+/Xqn7b/88otGjx6t5s2bq3Hjxrrlllv0wQcfSDq97NVVV13l9C02u92uZs2aKTQ01Ok4ffr00fDhwx1jx88//7za30XGjx9faWmyBQsWKDg4WN7e3rr66qv15JNP6tSpU077DBgwQA899JB8fHzUrVs3lZWVnfNzONt/P+ezPFpJSYlmzZqlzp07y8fHR/7+/howYIC+/vrravf5+uuvNWDAADVt2lTNmjXTHXfc4fQ7gsT4F6gvzLQFUGvnuzxCcHBwlevZ/u///q82bdrkWB/1TFWtN9a+fXt1795dt9566zlrveGGGzR8+HDH+5kzZ6q0tNTxPiEhQVFRUZX2mzBhgiTpiiuucFrn9N1339W8efMqffUtLy+vyr9snzx5UqNGjTpnne+8844GDRqkRo0aOdr+8pe/KCcnR//85z91xRVX6K233lJ0dLTatGmjnj17Ovrdd999mjlzpp5++mmlpqbqhRdeUFBQkGPQPXHiRL399tuaMWOG+vTpo6+//loJCQn66quvtHHjRg0ePFj/+Mc/lJGR4QhgN2/eLEnaunWrwsLCJEkbNmxQ79699dJLLyk0NFRz5sxRamqqOnfufM7r++GHH9S7d28FBQVpwYIFslqtevXVV3Xrrbfq66+/dpoxHR8fr3nz5slut6tbt26Kjo4+6+fw5JNPVrmWXYXzWaLhwIEDWrFihd555x0dP35czZs3r9F+6enp6t+/v2655RYtW7ZMZWVl+sc//qFevXpp165djj8gdO/eXc2aNdN7772nxx9/vNb1AQCAylJTUzVhwgTde++9Cg0N1dNPP6277rpL//u//6upU6fqww8/1Pvvv6+WLVtWe4zzXR7hySefdIy9ztS/f3+NGzdOf/nLX2p0nMjISCUnJ8vT0/OcfRMTE52C0MzMTPn4+DiWf/rPf/5T6RtcBw8e1J133inp9EPc/v73v0s6HWaOGjVKBQUFlc7zr3/9q8qJAzXx448/aufOnZo7d66jbf/+/Ro8eLDGjx+v5557TsePH9fjjz+uyMhIp98V0tLSdPz4cb3wwgtq3LixZs6cqWHDhunnn39WYGCgDh06pB49eqhx48aaN2+emjdvrkWLFmnIkCFavHixxo0bp7vuuksbN250HHPXrl06fvy4fv/9d+Xl5al58+bKz89XRkaGFixYoOnTp+vBBx+UdHpZtY4dO2rdunVnvcYXX3xRjz76qCZOnKikpCTt379fTz/9tPbu3ev0TIu0tDTZ7XatWrVKhYWF+vXXX8/5OZxtKa8z/7eXTofUZ07cqODu7u74I8F9992njRs36rnnntM111yj/fv369FHH1VUVJSys7Mr7VtQUKA77rhDERERWrlypU6dOqVnn31Wd9xxh37++WdZrVbGv0B9MgDgPJSUlBjvvfee8fvvvxuGYRirVq0yfv311xrvv2TJEuP99983DMMwZs2aZfzP//yPYRiG8dFHHxmvvPLKOfcvLy830tLSjIkTJxq7d+829u7da+zdu9dYt26dMXHiRGPPnj3GDz/8YJSXl1d7jLZt2xqSqn09/vjjlfZZvny58eabbxp9+vRxbH/rrbeMli1bVnmO0aNHG+PGjTvrtdhsNsNisRjJyclO7U2aNDGef/55p2ueNm2asW3bNsMwDGPRokWGJOPVV1916tOmTRsjKirKMAzDyMzMNCQZzz77rNOx//WvfxmSjA8++MAoLy83mjdv7rieQ4cOGZKM6667zhgyZIhhGIZRVlZm+Pv7G0lJSU7nzs7OdhxTkjFr1izDMAzjs88+MyQZn332mWEYhjF27FijadOmxqFDhxz9T506ZVx//fXGxIkTnfZ58skna/U5nI9x48YZ1f1f4KxZswxJxqZNm5za27ZtW+l/yz9+DuHh4Ub79u2NkydPOvocP37cCAwMNGbPnu20791332307t37vK8BAACcdvz4cWPy5MmGm5ubMXPmTMNutxsvv/yy0bRpU0efAwcOGDfeeKPRvn1744cffjjr8f773/8aGzduNAzDMH799Vdj1apVtapnypQpxi+//GIYxunxw8svv2yUlZUZ8fHxRmZm5jn3LygoMF599VXj+eefd4xx9+7da7zwwgtGUlKSsXfvXuPw4cPV7l8xpjrb6/vvv690zocfftjYvHmz0/b+/fsbM2bMqHSO0tJSp7FedebPn29IMvLz8x1tK1euNCQ5XcMXX3xhzJw509GvT58+hre3t3HkyBFHn08++cQxfjUMw5g+fbrh6elp/PTTT07n7Nevn9GiRQujrKzMWL16tdP1PP/880bnzp0NNzc3x/+u77//vmGxWBzn6tOnj9GnTx/H8f443hs3bpzRtm1bwzAMIz8/37BarUZ0dLRTDdu2bTMkGWlpaY59JBk//vhjrT6Hmjrb7zVvvfWWYRinx96333678c477zjtm5SUZEgycnNzK13fV199ZUgyvvjiC0f/H374wXjkkUeMAwcOGIbB+BeoTyyPAKBG9u7dq9tuu83xNZf8/HzHA7ckacyYMY6/BJ84cUI33HBDtU8wLSoq0qxZs/Ttt99W2vbdd9/p4YcfPudfXyuWSHjzzTfVtm1bx1fF7Ha73nzzTXXq1EkdO3Z09KvKpk2bHF/xqniq8Jlf+6qYeXCm6OhoxcTEVGo/fPhwlV9bqslMjd9++012u91pHVxJ6tevn5588kkNGzZMKSkp+u233zR37lz16tXLqV/fvn2dPpf2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F8/6u0XHjh21aNEipaSkaOfOnfrXv/6l1157Tddcc42mTJnC+BeoR8y0BVBjAQEB+vvf/66kpCTH15LOdPToUd1zzz3q1atXlUsIpKena+zYsZoxY4aGDBly1nM988wzuv766zV58mRHW7NmzRxfD+vcubPjq0zXX3+9o71i5sO1117r9HWyP36Fy8vLS4ZhOF4VDygwDEN2u112u93xNaqaOHLkiAIDAyu9znz4QHWCgoLk4eGhAwcOONoOHz6sNm3a6L333nNcz/Tp09W3b18dPny4xnVVzEb+44B8xYoVKi8vd2z39/dXz549tXjxYv3000/q27evLBaL+vTpo/fee0+7du0676URpNO/UO3Zs0c33HCD01/+V6xYoRUrVlS7X00+h3bt2lU5q6Di9cfZHefL39+/0myB9PR0x7+bNGmim266SXv37nU6f7du3ZScnKwNGzY47fvbb785PYANAAC4ztixY9WhQwclJCRUuX3lypV65pln9Nprr1UZOk2bNk3r16/XqlWrzvptnSZNmmjZsmXasmWL3nrrLUd7+/btHeNWLy8vffHFF7rrrrucxrO+vr7y9fV1aqtqLPHAAw84jXNHjx6tcePGyTAMlZeXyzAMjR07tsafzauvvlppjFvVDNeqdOjQQYWFhU6/O7z++uu6+uqrderUKXl6euq2227Ta6+9Jkm1GufedtttysjIqPR1+2XLlqlly5a65pprJJ2eBZuXl6d58+bp5ptvdsy+NQxDTz75pDp06HBeD66VpFtvvVVeXl769ddfncZ/V199tZ544omzfmuvJp/D2ca4ISEhtap1165dKikp0YwZM3TNNdfIzc1NhmE4HrRWMYP5TB9++KECAgJ06NAhubu7q3v37vrf//1f+fr66vDhw4x/gXpGaAugVh566CHNnj270l/1pdNf+Xn44Ye1YsWKKv/6vmHDBv35z3/Ws88+e87zeHh4KDk5WWVlZSoqKnLa9uOPPyoqKkqffPJJtTMZLsThw4fl6emp22+/XZ06dapyxvAftWzZ0mlwfOYg+Vx8fHzUu3dvpwCwYqD58MMPa/Hixdq6dateeOEFbdiwQSNGjKjxtYSGhmrMmDF65pln9Pjjj2vjxo166aWX9Ne//lV9+/bVoEGDHH0jIyO1atUqXXXVVY5Bbv/+/bV161Y1a9ZMt956a43P+0ezZs3STz/9pIEDByo1NVWffvqp7r//fiUlJalr167V7ldXn0Nd6Nevn7Zs2aLExERt2rRJU6dOrbT0wnPPPaeNGzfq3nvv1dq1a7VhwwZFRUVp2bJluvHGG536fvHFF46nNwMAANeyWCx6+eWXFRsbW+X2sLAwLViwoMrZhDabTVu2bNHq1asr/f99Vbp166YHHnigyhmoa9asUZ8+fdSpUyf95S9/qfV1nMvcuXPl4eGht956q8bfRpoxY0alMe65lhmrcMcdd0hy/kN3nz59dPToUQ0bNkzr16/Xxx9/rPHjx8vHx8ex/mpNxMXFqVmzZhowYID+9a9/af369Ro1apQ2bdqkxMRExzfx2rdvr+uuu06rV692zMr29/fXjTfeqM8+++yCJiY0a9ZMjz32mJ566inFx8fr008/1bvvvqsBAwbom2++Oet/D3X1OdRUaGioPDw89Oijj2rjxo1avXq1Bg8erKysLElVr2l76623ymKxKCoqSmvWrNGmTZsUExOjwsJCRUVFSWL8C9Sri/fMMwANVXZ29jmfQFvda/ny5U7Hstvtjn9v377dyMrKMu69914jLCysynOf2f+tt94yBgwYYHh4eBitWrUyNmzYUKn/hx9+aEgyioqKqr2eDz/80PDy8nJq27hxo3HmLfGHH34wsrOzjdLS0iqP0adPH+Pxxx83unXrVuPP4mxP133ttdcMf39/p7pzc3ON2NhY46qrrjK8vb2Na6+91pg7d65RXl5uGEblJ9meWduZT7wtKyszXnjhBaNTp05Go0aNjKuvvtp44oknKn1Ge/bsMSQZo0ePdrR9++23hiRj7NixTn2rOrckY9asWYZh/N9Ti8+85q+//tqIjIw0/Pz8DKvVatx0001OT6+tap+afA7no+IJvlWZNWtWldsKCwuNSZMmGc2aNTOaNGlijBw50li7dm2lz+Gzzz4z+vTpY/j4+Bh+fn7Gbbfd5ngCdYVdu3YZkoysrKzzvgYAAFC9l19+2WjatOk5+1X8/35tX38cS545LsnNzTW++uor46uvvjKaNm1qvPrqq5XOe+YYt6ioyHjooYeMzp07G5KMgQMHGocOHaq0z7Bhw4w///nPZ72eYcOGGQ888IBT2+jRo41x48YZhnF6PPPf//63yuMbxv+N+1etWlXjz6Jt27Znrenmm282/vrXvzq1bdmyxYiI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p0+v96IBAACAmmI8CwAAgIbmnKGtxWLRL7/8os2bN8vX11edOnVSQECAnnzySS1fvlxdunSRJMXGxuq2225Tly5dNHjw4HovHAAAAKgJxrMAAABoaM4Z2sbExMhisSgvL09paWlq2bKlnn/+eT3++OP6/fff9cQTT0g6/RTelJQUTZo0Sfv375eHR61WXgAAAADqBeNZAAAANDSWc3XYsGGDwsLC9Nlnn2nBggX67rvvdP3112vBggUaMWKE3N3d9csvv0iSTpw4oWeffZYBLgAAAEyD8SwAAAAamnOORv/85z/rv//9r/bs2SPDMJSWlqZFixbJx8dHkmQYhv7nf/5HgwYN0ieffKLPPvus3osGAAAAaorxLAAAABqac4a2N998s9zc3HTixAkdOnRIxcXFioiI0LPPPqvbb79dbm5u+uGHH3TDDTeob9++CgkJuRh1AwAAADXCeBYAAAANzTlD29dff13bt2/Xb7/9pldeeUXjxo1TSEiIhg0b5vja2L59++Tm5qbt27drz5496tq1a70XDgAAANQE41kAAAA0NOdc07a0tFQJCQkyDENXXnml5s+fr4KCAh09elT//ve/ZRiGBg8erFGjRunRRx/V888/fzHqBgAAAGqE8SwAAAAamnPOtC0uLtb777+vkydPatu2bXr33Xc1YsQIRUZGqkOHDpKk7777TgUFBbJarXrqqadUXl4ud3f3ei8eAAAAOBfGswAAAGhozhnaRkRESDo92L3hhhvUsmVLp4czZGdnKzAwUIGBgZKkL774ggEuAAAATIPxLAAAABqac4a2Fby9veXt7S1JatSokaO9bdu2Tv2uvfbaOioNAAAAqDuMZwEAANBQnHNNWwAAAAAAAADAxUNoCwAAAAAAAAAmQmgLAAAAAAAAACZCaAsAAAAAAAAAJkJoCwAAAAAAAAAmQmgLAAAAAAAAACbi4eoCAOByc/LkSe3bt6/ejl9UVKT9+/erXbt2aty4cb2co0uXLvLx8amXYwMAAAAAcLkjtAWAi2zfvn3q1q2bq8u4IDt37lRYWJirywAAAAAA4JJEaAsAF1mXLl20c+fOejv+3r17NWbMGL399tu67rrr6uUcXbp0qZfjAgAAAAAAQlsAuOh8fHwuyizV6667jtmwAAAAAAA0QDyIDAAAAAAAAABMhNAWAAAAAAAAAEyE0BYAAAAA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",
            "text/plain": [
              "<Figure size 1400x600 with 2 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        },
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "数据总数: 100\n",
            "异常值数量: 11\n",
            "异常值: [ 60.70382344 200.97077549 209.68644991 192.97946906 196.72337853\n",
            " 196.07891847 185.36485052 202.96120277 202.61055272 200.05113457\n",
            " 197.65412867]\n",
            "\n",
            "异常值判断标准：\n",
            "下界: 60.92 (Q1 - 1.5×IQR)\n",
            "上界: 143.18 (Q3 + 1.5×IQR)\n",
            "IQR: 20.56\n"
          ]
        }
      ],
      "source": [
        "# 示例 8：showfliers 参数对比\n",
        "np.random.seed(42)\n",
        "# 创建包含异常值的数据\n",
        "data_with_outliers = np.concatenate([\n",
        "    np.random.normal(100, 15, 90),  # 正常数据\n",
        "    np.random.normal(200, 10, 10)   # 异常值\n",
        "])\n",
        "\n",
        "fig, axes = plt.subplots(1, 2, figsize=(14, 6))\n",
        "\n",
        "# 显示异常值\n",
        "bp1 = axes[0].boxplot([data_with_outliers], labels=['包含异常值'], \n",
        "                      patch_artist=True, showfliers=True)\n",
        "axes[0].set_title('显示异常值 (showfliers=True)', fontsize=12)\n",
        "axes[0].set_ylabel('数值', fontsize=10)\n",
        "axes[0].grid(True, alpha=0.3, axis='y')\n",
        "for patch in bp1['boxes']:\n",
        "    patch.set_facecolor('lightblue')\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "# 不显示异常值\n",
        "bp2 = axes[1].boxplot([data_with_outliers], labels=['包含异常值'], \n",
        "                      patch_artist=True, showfliers=False)\n",
        "axes[1].set_title('不显示异常值 (showfliers=False)', fontsize=12)\n",
        "axes[1].set_ylabel('数值', fontsize=10)\n",
        "axes[1].grid(True, alpha=0.3, axis='y')\n",
        "for patch in bp2['boxes']:\n",
        "    patch.set_facecolor('lightcoral')\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "plt.tight_layout()\n",
        "plt.show()\n",
        "\n",
        "# 计算异常值\n",
        "q1 = np.percentile(data_with_outliers, 25)\n",
        "q3 = np.percentile(data_with_outliers, 75)\n",
        "iqr = q3 - q1\n",
        "lower_bound = q1 - 1.5 * iqr\n",
        "upper_bound = q3 + 1.5 * iqr\n",
        "outliers = data_with_outliers[(data_with_outliers < lower_bound) | \n",
        "                               (data_with_outliers > upper_bound)]\n",
        "\n",
        "print(f\"数据总数: {len(data_with_outliers)}\")\n",
        "print(f\"异常值数量: {len(outliers)}\")\n",
        "print(f\"异常值: {outliers}\")\n",
        "print(f\"\\n异常值判断标准：\")\n",
        "print(f\"下界: {lower_bound:.2f} (Q1 - 1.5×IQR)\")\n",
        "print(f\"上界: {upper_bound:.2f} (Q3 + 1.5×IQR)\")\n",
        "print(f\"IQR: {iqr:.2f}\")\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 第三部分：综合应用示例\n",
        "\n",
        "下面展示一些实际应用场景，结合多个参数创建美观实用的箱线图。\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 9,
      "metadata": {},
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/1545540555.py:13: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp = plt.boxplot(data,\n"
          ]
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAqORJREFUeJzs3Xd4FGXXx/HfbhpJSEIJvYcaeu8IAgKCSpFepAiIoiKWxy5iwwJiFwSV9iC9SUc6AaRICySUABJ6Gul95/2DN/sQEiCBsBvC93NdK+aemXvO2c2mnJy5x2QYhiEAAAAAAADAhsz2DgAAAAAAAAAPH4pSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAGQiKChIc+fOlcViuee5kpOT9corr2jFihU5ENn9sWbNGv3zzz+33Sc8PFwvvviiFi9enK25z58/r6NHj2a67ejRo3r11Vd16NChbM2ZJiEhQXFxcbfcnpSUlK35YmNj5e3treeff/6u4skNtm7dqv79+yswMNCm5921a5fatGmjVatW3dM8cXFxCg0NVXJycg5Fdu+OHj2qFStWKCUl5Zb7vPbaa1q5cmW25j106JDGjx+vsLCwTLe///77mjRpkiTp33//zdbcAAA8CBztHQAAALlNcHCw2rVrp3///Veenp564okn7mm+uLg47du3Tz/88INmzJihgQMH3vVcCxcu1IULF7K8f6FChfTMM8/ccb/x48fL399fUVFRMpuv/83q6tWr2r59u55++mlJUlRUlH788Uc5Ojpax86cOaMNGzZo5MiRt5z7888/108//aTjx4+rcuXK6bYtX75ckydPVuvWrVWnTp07xhkbG6v169ere/fukqSePXvq4MGDOn/+vCRpz549KlOmjEqUKKErV66oUqVK+u677zR06NA7zi1JhmEoLCxM0dHRkqSDBw/qhx9+yNKx0vXChK+vb5b3z0xiYqJcXFzu+vilS5fqjz/+0Lhx4+4pjuwKCwvT1q1b7/j5PWTIEM2cOVMnT55UpUqVMmz/8ssvNX78eG3YsEHt27e/X+Fmy48//qiff/5Z+/btU4MGDTJsP3funCZPnix/f/9sfb1Yvny5PvzwQzVo0CDT4z755BN17dpVFotF7777rl555RV9+umncnJyynS+xMREPffcc1lPLBPVqlXTW2+9dU9zAACQVRSlAAC4wYEDB/T000/r33//1eeff37PBSlJ8vLy0vr169WkSRMNHTpUJUuWVNu2be9qrm+//VZ+fn5Z3r9q1ap3LErFx8frn3/+UcuWLa0FKUnq06ePtmzZot9//11DhgzJ9Ngvv/xS06dPV5cuXVSqVKkM20NCQjRjxgx17NgxQ0FKkmbNmqXChQurU6dOWcrnl19+0auvvqpHH300Q+fZ2rVr1atXL7Vt21bLly9XcHCwYmJilJCQkKW5M3P27Fn9+uuvWd6/b9++dyxKpaamqmvXrho1alS6z6+UlBQ99thjunDhgk6cOHHXMa9YsUIVKlRQ1apV73oO/E9ERITmzp0rSTp58qSCg4PTbS9RooRWrlwpwzCUnJyszz//PMMcjo6Oev311zOML1myRAUKFFCHDh1uG8OIESN05swZffXVVzp8+LCWLVumfPnyZdgvOTlZM2fOzE56GbRu3ZqiFADAZihKAQAgyWKx6Oeff9Zrr72mxMRESdJbb72V6S9nmzdvVps2bdKNxcTE6JNPPrntOSpVqiR/f39NnDhR69evv+V+mf1Se6MWLVpox44dt91Hut6Rsnv37jvut3r1aiUnJ+vSpUvpik+DBw9WUFCQXnjhBTVv3lzOzs7pjtu/f7+mTZumwYMHZ1qQkqQ33nhDsbGxWrt2rUwm0y1jyOwXbCnjcz127Fh5e3tryJAhGjNmjHX8t99+07PPPitfX19Nnz5dkqzFgzJlytw2/6y4XWFOkr755huNHTs2S3PNnz9fq1atUu3atdMVpRwdHZU/f36dPHlSp06dyrSL6Eaff/55hkv04uLidObMGZUrV+628d5o8ODBevTRRyVJkyZN0u+//37b/VevXq2yZctmae7cxM/PT61bt9a2bdvUvHnzLB/3ySefKDIyUpLUr1+/DNtbt26tAwcOSLr++bp58+YM+7i4uGQoSv399986dOiQXnzxxQzvrZsVKFBAP/30k8qVK6dLly7dsZNuwIABmjNnjvXjhQsXatiwYZo1a5a1y/BW58mujz76SFOmTNHRo0dVsGDBbB8PAHi4UZQCADz0Vq5cqbffflv+/v7y8PBQ+fLlM+yTmJios2fPSrre+XSzmJgYffHFF1k635o1a7RmzZpbbr9TUSqnzZo1S5IUGBiYrshRrVo1zZw5U23bttV//vMfffPNN9ZtYWFh6tOnj9zd3fXBBx9kOu+GDRs0a9YsFS1aVI8//niG7Tt27FBQUJD69et3y1/Kixcvnu6cZ86cka+vr15++WW1adNGEydOVHJysnx9fTV48GANGzZM//77rzw8PHT8+HFJumNx58qVK9qwYYMkWQuSZ86c0Zw5c3T69OnbHptd4eHheuutt+Tq6qpXXnklw/ZXXnlFK1eu1Ndff62ffvrptnOtXbtWW7duzXTbv//+m+WOmaZNm1qLUomJiYqJicl0v4iICEVFRcnNzS1L8+Ym8fHxGjZsmHr37p2tgtSmTZv0zTffyM3NTb/++qt27typ77//Xu3atdOLL76ohIQEvfHGG4qKitLnn3+ujh07qlevXjp9+rTmzJmjevXqSVK6DsQ0X331lcxms0aPHi1Jevzxx9W9e/cMl8JGR0dr/fr1OnbsmE6dOqVjx46pYMGC2rNnj6pUqXLHHJKTk/XJJ58oJiZG06dPz3TNr48++kglS5bM8vNyo9dee01TpkzRyy+/rNmzZ9/VHACAh5gBAMBD6NKlS8ann35qVKlSxZBkODg4GEOGDDGCg4Mz7Hv+/HmjYcOGhiRjwoQJWT7Hhg0bjHfeecdISUnJsC01NdUYO3asERAQkK24W7RoYbRo0SJL+w4ePNioWrXqbfcJCgoynJycjPr1699yn06dOhmurq7G/v37DUnGmDFjjF69ehmOjo7GunXrMj3m9OnTRuHChQ1JRr169YwjR45keHTt2tWQZOzcuTPT7Tf7/fffDUlZegQEBBiPP/64IcmoW7eu0aBBgwyPNJs3b77lPHXq1MnyOSUZGzZsuOXzaLFYrDlPnjz5lvu1b9/ecHBwMDZv3nzLfTITHR1teHl5GU2bNrWOnTt3LtPn8m4MHjzYcHZ2Nj7//PMsPRfjxo275TySjJMnT2a6fdy4cbd8LhcvXmwEBQVlO/b333/fcHBwME6cOJHlY/bu3WsUKlTIkGRMnTrVOHv2rLFo0SLD09PTcHZ2Ns6ePWv9uvD0009bjztw4IAhyWjWrNkt596zZ48hyRgwYIBhGIaxevVqQ5LRv39/Y9asWcaYMWOMNm3aZHhOzWazUalSJaNbt26Zvq7R0dHp5jUMw3j11Vfv+FoFBgYahmEYXl5eRuvWrbP8HKX56aefDEnG+vXrs30sAODhRqcUAOChZDabtWjRIl26dEkvvviiHn30Ub3xxhvq2LGjFixYoBo1aki63u3zzDPP6PLly3rnnXeytdbK4cOH9dlnn+nw4cNaunSpHB3/92139uzZmjx5sjw8PDR+/Pgczy+r3n33XSUnJ6tz584ZLvWrXbu23Nzc9Mknn6hw4cLpts2cOVMvvPBChssYpet32+vUqZPCwsJkMpl04MAB1apV65Yx3KpzxTCMdB83bdpU33//vSRp2rRp8vf3V/ny5RUeHq6PP/5YISEhKlKkiCTJ29tbfn5+8vDwkGEY1rumBQQEyMXFJV33lK+vr7XDIzExUcOHD1fz5s31/PPP6/Tp0zp06JCKFy+erkPOMAylpqbKbDan64Jxd3fPNBeLxaLnnntOy5cvV8eOHdNdenizqVOnql69euratauWL1+e6XOcmV9//VWRkZHWzhvp+uWOixcvzvBc3klKSkq6z1dJOn78uKpUqaI6depo8ODBGY45f/68Nm7cqObNm6ty5cqqW7duts55O6mpqfrwww/1ySefqEqVKjpy5MgdL3lLExERoW+//Vbdu3fPdF2zW/nzzz8VHh6u0aNHa+TIkZo+fbpGjBih1q1bq3Tp0ipcuLB+//13/fLLL5o4caL1uLp16+rHH39Ujx49Mp03OTlZI0eOlJeXl7744gvFxsbqvffek9ls1rvvvqvevXvr6NGjyp8/v6TrnX5jxoxRgwYNVKdOnSx3qiUnJ+vNN9/U5MmTJUm1atWyvickadGiRerVq5eeeuqpe15/7JlnntGbb76pTz75RI899tg9zQUAeMjYtyYGAID9REVFGZGRkYZhXO9i+fXXX438+fMb3t7extq1a42nn37a2knw8ccf39U50ro+XnjhBetYQECA4eXlZdSoUcOIi4vL1nwtWrTIVufO7TqlNmzYYJhMplsee+DAAcPLy+uO57i56yctxrffftsoXLiwUbNmTWPDhg0ZHh06dDAkGcuWLct0+62sX7/eMJlMRv/+/Y0uXboYpUqVMt59912jYMGCxooVK6z7SErXAZaammq4ubkZAwcOvOXcN3eaLF261JBk/P777+n2S+uuevfdd285V5rY2FijX79+hiSjSZMm1s+529m4caPh6upquLi4GL/88ouRmpp62/3Dw8ONIkWKGGXLljWSkpKs42mfw9mxY8cOo1SpUsasWbOsYykpKYaXl5fRv3//Wx73559/GpKMadOm3Xb+tE6pzB4DBgzI0Cnl7+9vNGvWzPr5fPz48Wzl88EHH9yxi+1W1q9fb33up02bZkgyli5dmm6fO71Hunbtmm7/6dOnG5IMd3d3ayeWJGPo0KGGYRjG0aNHjQsXLhiGYaQ7PiIiwti6davx/fffG8OHDzcaN25s/Pbbb+nmTvv87dOnj7XLr0qVKtZOpmbNmhkRERHGpk2bjPz58xuFCxe2nistl7vplDIMwxg+fLghydi1a9ddHQ8AeDjRKQUAeGildQxIkslk0rBhwxQVFaWxY8da7wb36KOP6uzZs5owYYJ69Oih6tWr33bOCxcuWLt5pP91nOzZs8faZbVw4UJFRkaqffv2mXZJ3W5NqRdffFHdunXLco43dziluXz5sgYMGCAnJyd9+umnunjxoiZPnqynn35a7du3l/S/BcKLFSuW6d3xLl++rHXr1mUYX7ZsmebMmaMxY8bol19+UUxMjA4ePJhhv/DwcEnSkSNHMl3oPC2OGy1fvlzDhg1TiRIl9O2331oX8x4zZoz++usv9erVS5s3b7auf3XixAkZhiGTyaSTJ08qLi7ujnfHy0kHDx5Uv379FBgYqKZNm2rt2rXy9PS843Ft27bVpk2b1KNHD40cOVI//PCDfv31VzVs2DDT/f/zn/8oJCREv/32m5ycnO4p5qpVq6p06dLWDsE33nhDO3bsUGRkZLquraSkpCx3K2Wma9eu1m6gNC1atNCVK1ckXe80nDt3rmbNmqXU1FQ999xzmjhxYoZjbic1NVXTpk1TgQIFrOtmZYevr68uXrwo6XrHlSRFRkbq/PnzkmTtWrrVeySzdb06dOggR0dHFSxYUBUrVtTWrVtVoEAB65p0vr6+OnPmjJYtWybp+tpr5cqV07lz59LNU6pUKcXFxWUat6Ojo0aOHKmVK1fq119/VYkSJRQSEqJx48apQYMGCg4OVv78+bVhw4a7XkvqZn379tX06dM1depUNW3aNEfmBAA8BOxdFQMAwJ7i4+ON9evXG2PHjjUqVKhg7Vpo3bq1sXbtWmP06NGGJGPIkCFZmm/v3r3Z6mTK7GELiYmJxquvvmrMnDnTMIz/df589dVX6fa7XedE2jG3Wx8pbV2pnHge9u7da5hMJqNMmTLWNXDSOqUMwzAuXrxoVKhQwfj6668Nk8lkPffRo0cNwzCM+fPnWzuzbiWt06Rbt27Gd999Zzz11FOGpGx1qN3YKTR//nzD0dHRGDVqlJGYmGjUqFEjy/MMGDDAuHr1qtG9e3fDy8sr0/XODMMwlixZclfP763WfDKM691dXbp0MSQZn3/+uTF27FhDkhEUFGSkpKQYHTt2NLp27Zqugyu7nVJ3WlMq7dGqVSvDz8/vtnPeip+fnyHJeOyxx+7q+Ds9h3369Lnte0SZdEoZhmFcvnzZSE1NNVq3bm1IMubPn28YxvUOOQ8Pj3TnSFvzbciQIcbkyZONTZs2GWFhYZmeL7M1pQzDMP79919j3LhxhpOTk3XeHj16GOfOnUu33710SsXExBiOjo5GoUKF7tjZBwBAGjqlAAAPpa+++kqrV6/W7t27lZCQIEkqVKiQRowYodGjR6ty5cp67rnnrLdVnzFjhmbMmJFhns2bN2e65s/HH3+s9957L8fife+99255V7TWrVure/fuWr9+vebOnXvLOb788ksVLVpUkuTs7Kw+ffpoz549+uGHH3Ty5ElJkp+fn7VrqWXLlpKuryU0fPjwDPNdunQpS7G3aNFCO3bsyDA+ZMgQzZw5UxEREVm6FX3Dhg01d+5cdezYUQULFtR//vMfBQQEWLeXKFFChw4dUqtWreTg4KA//vhDHTp00NatW1W9enXt2rVLktSsWbNbnuPQoUOSrnd7LVu2TI0aNZIkValSJd06VGldYrVr17beYS3NjXdE6927txo3bmy9o2O3bt2s3U4xMTFavHixKlWqpBYtWliPCQ8P159//ikPDw8VKVJES5Ys0fnz51W6dOkM8Z44cUJDhgxRkSJFVKFCBe3Zs0dDhgyRg4ODJGnjxo06e/asnn32WesxoaGhWr58+W2e6esdQIsWLVKbNm309ttvy9PTUw0aNJCPj4+k659z77zzjl555RV99913t53rbvXq1Uuvv/66GjdufNdzbN++XZKsr2N23bj2l5+fn/bt26ennnpKFSpUkCTVr19fa9euVWBgoLVrLyuKFSum8ePHa+vWrRozZox69+4tSSpfvrzatWsnX19f+fr66q233pKnp6f2799vPfaLL77Q+vXr9dFHH922K27x4sXatWuXNm3apIMHD8owDLm5ualXr15auXKllixZouXLl+uxxx5TvXr1VKNGDevaa3fD3d1ddevW1b59++Tv76/atWvf9VwAgIeIvatiAADYQ9r6ML6+vsbzzz9vrFq1yroWj7+/v1G7dm1DklGsWDGjatWqGR5pHQd79+5NN29ap9TdrkF1K7frOBozZoxhGIYxefLk23Z13NyZcnNHys2Pr7766q7WlMpq3Fl5ODg4ZDpvaGio4ejoaDz11FPpxtevX284Ojoa7733nmEYhuHj42O0b9/eMAzDKFeunFGjRo0Mc8XFxRm//fab0ahRI+t5fXx8jCVLlhiLFy82pHtbU+pWNmzYYEgyxo8fn25869athiTjjTfeuO3xoaGhRtWqVQ2TyWSsWrXKePLJJw1JRnx8vHWfzNaUSvscvV2nVJrLly8bZcuWNSQZX3/9tXXcYrFYz7dkyRLDMHK+U+pu1oC62ZAhQ7IUU1bUrFnTkK53TZ46dco6nt01pQzDMCZMmGBIMp566ilj27ZtxtSpU42XX37ZeP3119Pt99hjjxkODg5GbGysYRiGsWrVKsNsNhsdOnQwkpOTM8x7Y6dU2p0enZ2djccee8yYMmWK8eWXXxqzZs0yrly5Yrz33ntG0aJFrXF6eXkZzs7Od90pZRiG0bNnT0OSMXfu3LueAwDwcKFTCgDwUBo+fLi6desmb29v61hYWJg++OADTZ06VampqXrmmWc0ZcoUubq6pjt2y5Ytatu2rTp37nzLNX7uh6ZNm2rNmjXWj8+dO6c6depk2O/m7q3XX39dkyZNyrDfyJEj9cQTT0iS9u/fr1GjRmnMmDEaOHCgpOtrSn3yySdq3bq1tmzZkuH4LVu2ZGmdnlutt5MVaR0/krRr1y7rGj1nz55VSkqKrl27plGjRqU75ssvv9SLL74oSerUqZOmTJmiBQsW6N9//9UHH3yQ4RxLly61dhK1adNGW7ZsUbNmzdS9e3fruj73g5+fnyRl+BwKCwuTpNt2j8XGxqpz5846fvy4PvzwQ3Xu3FlTp07N8RiLFSumKlWq6Ny5c/r777+t4yaTST///LPWr1+vt956S08++WSOnzsnpK1PVbBgwXuaZ/bs2fL395d0vWtyyZIlWrVqlbWb8FbvEZPJlGFs3rx5evvttyVJK1as0IoVKyRJ+fLlU8+ePdPt27BhQ23YsEHbt2+X2WxWz5495evrqwULFmS4O+LNvvzySz333HN65JFH5O7urqCgIDVu3Fjh4eFq166d5s2bpw8//FDbt2/X9u3bVbt27UzvqpgdaV9P09bhAgDgTihKAQAeWmm/QJ08eVI///yzfvvtN0VGRsrHx0cff/yxHnvssQwFqWPHjql3794qXbq0fv/99wxzWiyW+xavg4NDukLFtWvX7mm+kiVLWhc5Trs0sHTp0jlaaHvqqadUrlw5jRs37p7nOn78eIbCy7Zt27Rt27Z0Y99//731sqbnnntOP/30k4YPHy6TyaQBAwZkmLd///7Knz+/qlSpotKlS6dbAD8pKcn6/506dcqwsPunn36qTz/91PrxyZMn013mdzsLFy6Um5tbhsLe5cuXJem2C1D/8MMP2rNnj/r27WsttJnN5iydNzu2bt2qv/76S2XKlNH8+fM1YsQItWvXTtL1hbaHDRumn3/+WbNnz1aRIkVy/Pz3KjExUdL1S8vu1rlz5zR27Fjrx++++65++ukndenSJd1ldVnVtm1b5c+fX+XLl1fLli3VvHlz1atXT76+vnJwcFBqaqq1GNuxY0dNmDBB77//vo4cOaLChQtr9erV8vLyuuN5qlSpYr2U9OjRo4qNjdXx48f18ssv648//lCLFi20ZcsWtWnTJtNLkO9GWlzx8fE5Mh8AIO/L+Z9eAAB4gHz99deqWrWqJk+erPz58+uHH37QokWLNGbMGDVq1EhHjx617rt+/Xq1bt1aKSkpWrFihXV9phulFRSycoe1B8XWrVtlMpkyPLLSJVW9enV9+OGHmR5/u0faGkw3GjJkiAzD0Jdffinp+p34DMOQYRjq16+fTCaTTpw4Ye2SkqTatWurdevWio6OVufOndOt93Sjp556StWqVcswHhoaKul/RQ2z2awBAwZkeGR27O2sWrVKR48eVb9+/TIUPtO6TG5XlHrzzTc1b948zZgxw9qNk1lXzr2Ij4/Xiy++KC8vL+3atUulSpXS6NGj06079NZbb2nixInW7rr7LSwsTDNmzEhXLLydtNct7c552RUVFaUuXbooLCzMeke5pk2bas6cOYqKitILL7wg6dbvkcwULVpUoaGhOnLkiH7++WcNGjRIFotF48aNU5UqVbR3717rvq1atVKlSpW0d+9eeXl5acOGDSpbtmy2crBYLOrTp4+aNGmi0aNHa/LkyRozZozKly9/zx1kN4uKipL0v7sSAgBwJ3RKAQAeas8//7wOHDig9u3bq3///tYOmx9//FGDBw9Wly5dtHnzZk2cOFFTpkxR8eLFtXLlStWtWzfT+dIu8SlTpoytUrgvQkNDrQuZFy9eXF26dMmwz6VLl7R69eoszff4449nWsTLTNrlTLeKK60zacqUKUpNTVWJEiU0f/58derUSZUrV063f2pqqlJTUyVJZ86cUUJCgnUh96w4cuSIpOtdQZLk5ORkXfz+Rq+88ooCAwOzNGdMTIzGjh0rZ2dnvfXWWxm2BwUFSdIdiw99+vRJ93FWO6UMw5B05yLWmDFj5O/vry+//FKlSpXSf/7zH40ZM0YLFy5Uv379rDG+9tprWTpvTjh+/LiGDh2qgwcP6ptvvrnj/mnvw7TiYnZcu3ZNjz/+uPz9/TV8+HA1adJEu3fvliR17txZ3bt3V6FChbRnz55bvkd+/fXXTOd2cXHRkSNHtHDhQi1YsEDHjx+XdP3zrFChQtb9pk6dqrNnz0qSKlSoYF1gPTvMZrMWL16s//znP1qwYIH8/Py0dOlS1a1b97YLpd+NtOLf7QqqAADciKIUAOCh5urqqtmzZ2cY7927t+Lj4zVkyBBVqlRJFotFnTp10owZM1SsWLFM57JYLJo5c6acnZ3VqlWr+x36fXH58mW99tprmjp1qj788ENJUtWqVTV9+vQM+27ZsiXLRal33nnHuv7OndStW/eWlyZ6eHho4cKFWrdunebMmaMePXpIul5g+frrrzPsP3bsWO3YsUMlS5bUsWPHNHDgQC1YsCBLBRzDMLRhwwblz58/xy5pTExMVN++fXXy5El99tlnmV7qt3//fjk5OalixYrZmvtORaZZs2Zp586d1u6/211u9+6772ratGl69NFHrUWnwYMH6+2339akSZOsRal7FRERoX/++Uf79+/X/v375ePjIxcXl1vun1YkrFq1apbmT1tzLa3okx3PPPOMdu/erREjRmjKlCn67bff0m3/6aefVLRoUS1atOiW75HMilKzZ8/WZ599Zi1ienh4aMiQIRo4cKAeffRRmc1mhYaG6oUXXtDChQtVtGhRtWzZUkuWLFH//v2t60mNGzdOtWrVyrAOVWaqVq2q5cuX6+eff9ZLL72kRx99VAEBATlePE97nmvUqJGj8wIA8i6KUgAA3CAuLk4bN27UggULtHjxYknX/+o/YcKEO16iNG7cOJ04cUIDBgxIt4B6Ttm7d69Kly5t/TitA+hmWbms7mYXLlyQJOuC6E2aNFGHDh30ySef3PKY6OjoLM//xRdfaMaMGVnaNzg4ON26TjdycXHRY489pgYNGshisWjy5MmSrheQRo0apXnz5ql48eJKSEjQiy++qF9//VX169fXxo0b1alTJy1evFj9+vXTnDlzMu0SubEYtmLFCgUFBWnEiBFydnaWJCUnJ2vIkCEZjtuzZ88d8zp79qwGDRqkHTt2aMCAAXrrrbc0Y8YMxcfHq0mTJqpataq2bdumEydOqHHjxtnuYrlToa1o0aLWNbmqV6+up59+OsM+SUlJevXVV/Xjjz+qatWq+uOPP6zzenl56YknntDFixcVHh6erqMnK8LDw3Xw4EGdPHlS0vXFwW9eEHvEiBHWDrEjR46offv21m0RERHWwlCHDh2ydM6098KOHTuyFaskzZ07V6tXr1bv3r0z3V68eHHr/wcGBmb6eZGZYsWK6dSpU+rSpYsGDhyorl27Wi/hjIqK0o8//qgvvvhCkZGRatmypWbNmqWyZcuqa9euWrp0qRo1aqRp06Zp1apV+uqrr9StW7cMi54fPHgw0y48Sapfv76Cg4P1448/ZtiWkJCQpRwyk5iYKH9/fxUuXFg1a9a863kAAA8Ze976DwAAe4uOjjY2b95sfPzxx0aHDh2MfPnyWW+R3qRJE+O3334zEhISbjtHUlKS8eqrrxomk8koXbq0ERoamuNxFi5c2PDy8jLatWtnfbRo0cKQZIwZM8YwDMOYPHmyIcno3Lmz8eyzz1oftWrVMiQZJ0+evOX8u3btMkwmk1GjRg1j6dKl1nEvL690t4iPjo42qlatatStW9fw8PAwJBnz5s275bxfffWV9fnMzqNcuXIZ5oqLizPWrFljvPTSS4aXl5chyXj00UeNPXv2GC+88IIhyWjfvr2xfft2a84tW7Y0wsPDDcMwjNDQUKNOnTqGJKNVq1bGlStXrHN3797dqFy5slG8eHFDkjF8+HCjQoUKRv78+Y3g4GDDMAyjY8eOd4w7s+c4MDDQGDt2rOHq6mp9vZKTkw3DMIwpU6ZkOs/EiRNv+Zzeyu7du42FCxcaqamp1rGnn37ayOqPe9euXTPq1atnSDKqV69uXLhwIcM+8fHx6T5OSEgwnnnmGWP06NFGp06dDEnG3LlzMxwXFRVleHt7p8vRy8vLaNu2rfHmm28aixcvNs6dO2cYhmFs2LDhts9x//79s/O0GLVq1TLMZrP18+BuTZs2zZBk/Pnnn+nG0z4Xb/Xo2rVrhrkyi2XPnj3W91SpUqWMX3/9Nd1rmZSUZLz88suGJMNsNhsmk8no0KFDujmio6Pv6v124+PG93t2bN261ZBkPPfcc3d1PADg4USnFADgoTR27FitXr1aJ0+etK6x4+TkpCZNmuiJJ57Q008/neW7qJlMJp07d07VqlXTsmXLVLhw4fsSc82aNfXXX39ZPz579myma8y88cYb6e6m9frrr1sve7qVpk2basuWLWrZsuVtO27y58+vokWLavv27cqXL58GDhyYacfNzbZv337Pl++9//771k6uRx55RG+//bY6deokSWrUqJHq1KmjSpUqqV27dkpNTdUbb7yhzz77zNpFUrhwYW3dulW9e/eWn5+fLly4YF3nqlGjRlq6dKny5cundu3aaejQoTp+/Li+/PLLdN1pLi4umXaTvPLKK/r2228zjB8/fly1a9dWUlKSfH19NXnyZHXs2NG6vUePHgoJCdE///yj4OBgOTg4qGPHjnr55Zez9FzdqEmTJmrSpEm2j0vj5eWlnj17ytfXV1OnTlX+/Pkz7HPzelwuLi46d+6ctmzZIkl68skn1a1btwzHeXh46Ntvv9Xu3bvVqFEjNWrUSFWrVs30ksP27dtryZIlWr9+fbq7uJlMJlWpUiXdnfCy4sUXX9Rzzz2nP/74w7oweU5r3bq19Tm40a0uqcxsgfFGjRpp0KBBqlWrloYOHZrhMkYnJyd9++236tGjhz766CMdPnxY7733XqbzDx48OMudiTe68e6e2bVgwQKZTCaNHj36rucAADx8TEbaT+IAADxENm7cqKFDh6pOnTpq1KiRmjVrpubNm9/1reOTk5OVmJiY6S/yOeHs2bMymUwqV66cdcxisSg8PFyurq73dMv7+ykxMVHx8fHy8PCw3ub+bsXFxemHH37Qk08+KV9f31vut2LFCpUqVUoNGjTIdLvFYtHRo0dVq1Yt65jx/3fxu11BzmKxyDCMTPOwWCyyWCwZLqOSpHnz5il//vzq3LlzlhcjR85JTExU+fLlVbJkSe3fv9/e4eRJMTExKlWqlNq3b2+97BkAgKygKAUAAIA87bvvvtOYMWO0bdu2B/YmBLnZ559/rvfee0///POPateube9wAAAPEIpSAAAAyNMsFotatmwpwzC0a9cue4eTp0RERKhy5coaOXKkPvvsM3uHAwB4wNBDDgAAgDzNbDbr999/V1RUlLZv327vcPKUGTNmqFatWho3bpy9QwEAPIDolAIAAAAAAIDN0SkFAAAAAAAAm8t4i5hcIDQ0VI0bN9Zvv/1mvaX1vHnz9Mknn+jcuXMqWrSoXn/9dY0aNcp6zMyZMzV+/HhdvnxZ1apV0/fff68WLVpk6XwWi0UXL16Uh4fHLW/dCwAAAAAAgDszDEPR0dEqWbLk7e8+bOQyO3bsMCpXrmxIMjZv3mwYhmGcPn3aMJlMxrJlywzDMAx/f3+jSJEixvr16w3DMIwtW7YY7u7uxsaNG42UlBTju+++M7y8vIzQ0NAsnTM4ONiQxIMHDx48ePDgwYMHDx48ePDgwSOHHsHBwbetx+SqTqkZM2Zo3Lhx+vrrr9WzZ0/ruKOjo5ydnWWxWGQYhhwcHGQymXTkyBE99thjmj59uvr166e2bdtKkl566SV99913Wrp0qYYPH37H83p4eEiSgoOD5enpeX+SAwAAAAAAeAhERUWpTJky1nrLreSqolSnTp00cOBAOTqmD6tMmTKaNm2a+vbtq9TUVKWmpqpGjRrq27evJOnIkSN69tln0x1Tq1Yt+fv7Z3qexMREJSYmWj+Ojo6WJOXPn1/58+eXJJlMJplMJhmGIeOGteDvNG6xWNKdK7vjZrM5w9zZHb/b2MmJnMiJnMiJnMiJnMiJnMiJnMiJnMiJnHIip7SPbydXFaWKFy+e6fg///yjkSNH6vfff1evXr20d+9eTZkyxfoERkdHy93dPd0x7u7uiomJyXS+CRMmaPz48RnGQ0JClJCQIElydXWVl5eXoqKiFB8fn25eDw8PRUREKCkpyTru6ekpNzc3hYeHKyUlxTpesGBBubi4KCQkJN0LVbhwYTk4OOjq1avpYihatKhSU1MVFhZmHTOZTCpWrJiSkpIUERFhHXd0dJS3t7fi4+MVFRVlHXd2dlahQoUUExOj2NhY6zg5kRM5kRM5kRM5kRM5kRM5kRM5kRM5kZMtcsoKk3FzqSuXMJlM2rx5s9q0aaNXX31VR48e1bp166zbP/vsM/39999avny56tatq2effVYvvfSSdXuPHj1Urlw5TZ48OcPcN3dKpbWVRUREWC/fyyuVybxYbSUnciInciInciInciInciInciInciKn3JtTZGSkChQooMjIyNsuk5SrOqVuxcXFRSZT+pYvBwcHnT17VpJUo0YNHTlyJN32w4cPq0uXLrecz8XFJcO42WzOsCp82hN6s1uN33z83Yxn95z3e5ycyImcyOl24+RETuRETrcbJydyIidyut04OZETOeXdnLLiNvflyz369eunrVu3au7cuUpNTdWhQ4f0/fffq2vXrpKkYcOG6Y8//tDu3buVnJysiRMnKjw8XD169LBz5AAAAAAAAMjMA9EpVbt2ba1YsULvvvuuRo0aJW9vb40cOVLvvvuuJKldu3aaNGmS+vbtqytXrqhmzZpas2aNChYsaOfIAQAAAAAAkJlcu6aULUVFRcnLy+uO1zoCAAAAAADg9rJaZ3kgLt8DAAAAAABA3kJRCgAAAAAAADZHUQoAAAAAAAA2R1EKAAAAAAAANkdRCgAAAAAAADZHUQoAAAAAAAA2R1EKAAAAAAAANkdRCgAAAAAAADZHUQoAAAAAAAA2R1EKAAAAAAAANkdRCgAAAAAAADZHUQoAAAAAAAA2R1EKAAAAAAAANudo7wAAAAAA5ByLxaJz584pOjpaHh4eKlu2rMxm/hYNAMh9KEoBAAAAeURAQIDWLV2qa4GBUkKClC+fClSrpo7du8vX19fe4QEAkA5FKQAAACAPCAgI0ILvvlOV0FD1LFNGRd3ddTU2VtsPHNCC4GD1fvllClMAgFyFPl4AAADgAWexWLRu6VJVCQ1V3+rVVdrTU84ODirt6am+1aurSmio1i9bJovFYu9QAQCwoigFAAAAPODOnTuna4GBalWmjEwmU7ptJpNJLUuXVkRAgM6dO2enCAEAyIiiFAAAAPCAi46OlhISVNTdPdPtRd3dpYSE6/sBAJBLUJQCAAAAHnAeHh5Svny6Ghub6farsbFSvnzX9wMAIJegKAUAAAA84MqWLasC1appe3CwDMNIt80wDO04f14FfX1VtmxZO0UIAEBGFKUAAACAB5zZbFbH7t11wttb844dU3BkpBJTUhQcGal5x47phLe3OnTrJrOZH/8BALmHybj5TykPoaioKHl5eSkyMlKenp72DgcAAAC4KwEBAVq3dKmuBQZKCQlSvnwq6OurDt26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UDihFAAAAACFE0oBAAAAUDihFAAAAACFE0oBAAAAULhOFUrNmzcvJ510UgYMGJARI0bkX/7lX7Jx48YkyZw5c3LCCSekb9++GT16dG6++eYKVwsAAADA6+lUodQZZ5yRE044IatWrcof//jHPPXUU7niiiuybt26TJs2LdOnT8/69etzxx135OKLL86vfvWrSpcMAAAAwC50qlCquro65XI5ra2tKZVK6d69e/7whz/kvvvuy8CBA3PxxRenR48emTJlSqZPn57bbrut0iUDAAAAsAudKpS68847c8cdd6S6ujpDhgzJU089lc9+9rP54x//mAkTJuyw7YQJE/L0009XqFIAAAAA3kj3Shewu1555ZWcfvrpOfPMM3PllVdmzZo1+cpXvpKqqqo0Njamurp6h+2rq6vT1NS0y31t3LixbS2qJGloaEiStLa2prW1NUlSKpVSKpVSLpdTLpfbtn2z8e3P39vxqqqqnfa9p+N7W7ue3nz81Y93lZ72pnY96UlP7dvTdu3x71BH6akrvk560lNn6yn5f/NKV+mpK75OetJTZ+pp+39fPcd09p72dlxPb97T7ug0odR///d/Z82aNfnmN7+Z7t27p7q6Ouedd15OP/30TJ8+PfX19Tts39zcnP79++9yX1dddVW+/OUv7zS+atWqtLS0JEn69OmT2traNDQ0ZMOGDW3bVFdXp3///lm3bl02bdrUNl5TU5O+fftm7dq12bJlS9v4wIED06tXr6xatWqHF2Xw4MHp1q1bVq5cuUMNw4YNy9atW7NmzZq2sVKplOHDh2fTpk1Zt25d23j37t0zZMiQbNiwoS1YS5KePXtm0KBBaWpqSnNzc9u4nt56T2vXrk2ybfLdsmVLl+hpu670OulJT52tp+3Wrl3btq/O3lNXfJ30pKfO1NP2D2e3zytdoaeu+DrpSU+draftfw9t3rw5SbpET9t1pdepo/S0O0rl3Y2vKuwXv/hF/u7v/i719fVtb+Aff/zxvPOd78x//Md/5JZbbsnChQvbtv/EJz6RjRs35vbbb99pX7s6U6quri7r1q1LTU1Nkq6TTHbFtLWSPc2bNy/HH3985s6dm2OOOaZL9LQ3tetJT3pq356efPLJHHfccZkzZ06OPfbYLtFTV3yd9KSnztTT3Llz8/a3v71tXukKPXXF10lPeupsPW3/e+j3v/99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6U8zadKkdumHrqNULpfLlS4COrLm5uZs3bo1NTU1SZJXXnklffr0ecvXUwP7N3ML0N7MK0B7M6+wrwmlAAAAACicy/cAAAAAKJxQCgAAAIDCCaUAAAAAKJxQCgAAAIDCCaUAAN6i5557Lvfcc0+hx1y4cGEuuuiiLFmyJEny85//PN27d297fNWqVTnrrLPy/PPPv+VjnXTSSfn3f//3t7wfAIBXE0oBALxFK1asyIUXXpjrrrtut59z4oknplQqveHXaaed9rrPr6mpyZIlSzJhwoT8z//8T9t4a2trfvCDH2TixIl55ZVXUldXt8vnjx49epfHPPHEE3e/cQCAt6D7m28CAMB2L774YjZs2LDD2IEHHpjLL788l1xySY477rgMHz58h8d79eq1y3Do+uuvz/Tp03d5nLvvvjszZsx43ToOOOCA3H///fm3f/u3tLa2to1XVVVlxYoV+epXv5qPf/zjqap6/c8gr7jiivz93/9928/f+c538uSTTyZJvvSlL+WBBx5o+xkAoL0JpQAA9sDZZ5+dX//616/7+K7ONJo4ceIuw51+/fplyJAhu9xPv379djn+wAMP5EMf+tAOY9/61rfavi+VSm3fn3/++W3fb968eYfL+5JtwdbYsWPbfn69WgAA9gWX7wEA7IFHHnkk5XI55XI5jz76aM4444wsW7asbaxcLue8887LjBkz2n5uz7ON3vve92b+/PltX9/61rfSrVu3HHPMMenWrVseeOCBfPazn82jjz66w3avDaSSZM2aNVm8eHHbV319fbvVCQDwZoRSAAB7aerUqRk7dmxOPPHE1NfXp1wu56KLLsqTTz6Zd73rXW/6/HPPPfd115M699xzd/mcfv36ZezYsendu3e+8Y1v5JJLLslZZ52Vr371q0mSxsbG3HXXXTn55JNzzTXXZODAgTucDfVql156aQ4++OC2r2uvvXbvfxkAAHvI5XsAAHvoRz/6Uc4888wdxgYOHLjDz/3792/7fleX7z300EPZvHnzGx6nZ8+eO41973vfy49//OM8/PDDGTRoUG688cZ88pOfzM9//vMkyTnnnJPp06fnvvvuy6WXXpp77703Dz744E6XFc6ZMydbt27N1Vdfndra2lxwwQWve0wAgH1BKAUAsBcGDhyY3/3ud7u1ba9evdq+f+WVV7J27dqdthk6dGi2bt2apUuX7jC+YsWKjBgxIrW1tUmSVatWZdOmTbn22mtz7rnnprq6Osm2xdY//vGPJ0m6d++eD3/4w3n/+9+fK6+8Mocffvguj5ckixcvzgEHHJADDjhgt3oBAGgvQikAgL1QVVWVww47bI+fd+edd7adlfRqDz/8cLZs2ZKTTz55p8duueWWfOITn0iS/Pu//3suu+yytse2bNmSJFm4cGEeffTRtp+TpEePHvniF7+YJGltbW27E9/ZZ5+de+65p208SW688ca25/32t7/d474AAPaUNaUAAAo2atSoNDY2prGxcZeLi7960fS3ve1tOzx2xhlnpEePHjt9nXnmmVm0aNEuH+vRo0e+8pWvtO3jc5/7XGbMmJH77rsvpVIpl156aWbMmJHvfve72bp16+ve+Q8AoD05UwoAYA+tWbMmffv23evnl0qltuDn1Wc27Y4bb7wxV1999Q5jzc3Nede73pXPfOYz+fa3v53rrrsuU6dO3WGbQYMGtX0/ceLETJw4MbNnz05ra2v+8R//MWPGjMmcOXOSJDU1NXvTFgDAHhFKAQDsodmzZ+eQQw6pyLFfu/bT5s2bM3369AwdOjSXXXZZ+vTpk8svvzyPPvrom9Z4xx13ZMKECRkzZkyS5OWXX05VVVVGjBiRww47LFOmTNlnfQAAuHwPAGAPLFiwIPfee28+/OEP7/U+WltbU19fn/r6+qxfv36Xx9j+9UZ36HviiScyderUzJ49Oz/96U/Tu3fvfP7zn8+JJ56YE044IbfffvvrPn/RokX5/ve/n89+9rM7HPeggw5Kjx49cs455+S73/3uXvcIAPBmnCkFALCb5s2blzPOOCMTJkzY5WLlu2vZsmUZOHDg6z4+bty4XY6Xy+X89re/zaxZs/Lggw9m1qxZ+Yd/+If85Cc/yfDhw5NsW4D9rrvuyg033JDPfe5zueiii/K3f/u3Of3003PmmWcm2XbHvQ984AOZPHlypkyZkttuuy0TJkzI7bff3nZ2VHNzc1asWJFk2x3/unXrttf9AgDsijOlAAB209ChQ3Pqqafm5z//eXr06LHX+xk5cmReeumlvPTSS1m+fPlOj7/eQuelUinXX399fvjDH+Y973lPFixYkDvvvLMtkHr1dv/0T/+UJUuW5Oabb87mzZvzu9/9ru3xL3zhCxk5cmTuuuuuDBgwIN/4xjcyderU9O7dO1dddVXbdpMnT84RRxyRl156Ke973/v2ul8AgF0plcvlcqWLAADYX2zYsCH19fUZMWJE21h9fX369euX7t2LOYl9e+BVVeXzSQCgcoRSAAAAABTOx2MAAAAAFE4oBQAAAEDhhFIAAAAAFE4oBQAAAEDhhFIAAAAAFE4oBQAAAEDhhFIAAAAAFE4oBQAAAEDhhFIAAAAAFE4oBQAAAEDh/n9BfneCKNSbOgAAAABJRU5ErkJggg==",
            "text/plain": [
              "<Figure size 1200x700 with 1 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        },
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "图例说明：\n",
            "- 箱体：包含中间50%的数据（Q1到Q3）\n",
            "- 中位线（黑色粗线）：中位数\n",
            "- 均值标记（黄色三角形）：均值\n",
            "- 须线：延伸到正常范围的最小值和最大值\n",
            "- 异常值（红色圆点）：超出1.5×IQR范围的数据点\n",
            "- 缺口：中位数的置信区间\n"
          ]
        }
      ],
      "source": [
        "# 示例 9：综合应用 - 多组数据对比\n",
        "np.random.seed(42)\n",
        "# 模拟不同产品的销售数据\n",
        "product_a = np.random.normal(100, 15, 100)\n",
        "product_b = np.random.normal(110, 20, 100)\n",
        "product_c = np.random.normal(105, 18, 100)\n",
        "product_d = np.random.normal(95, 12, 100)\n",
        "\n",
        "data = [product_a, product_b, product_c, product_d]\n",
        "labels = ['产品A', '产品B', '产品C', '产品D']\n",
        "\n",
        "plt.figure(figsize=(12, 7))\n",
        "bp = plt.boxplot(data, \n",
        "                 labels=labels,\n",
        "                 patch_artist=True,\n",
        "                 notch=True,\n",
        "                 showmeans=True,\n",
        "                 showfliers=True)\n",
        "\n",
        "# 设置箱体颜色\n",
        "colors = ['#FF6B6B', '#4ECDC4', '#45B7D1', '#FFA07A']\n",
        "for patch, color in zip(bp['boxes'], colors):\n",
        "    patch.set_facecolor(color)\n",
        "    patch.set_alpha(0.7)\n",
        "    patch.set_edgecolor('black')\n",
        "    patch.set_linewidth(1.5)\n",
        "\n",
        "# 设置中位线样式\n",
        "for median in bp['medians']:\n",
        "    median.set_color('black')\n",
        "    median.set_linewidth(2)\n",
        "\n",
        "# 设置均值标记样式\n",
        "for mean in bp['means']:\n",
        "    mean.set_markerfacecolor('yellow')\n",
        "    mean.set_markeredgecolor('black')\n",
        "    mean.set_markersize(8)\n",
        "\n",
        "# 设置异常值样式\n",
        "for flier in bp['fliers']:\n",
        "    flier.set_marker('o')\n",
        "    flier.set_markerfacecolor('red')\n",
        "    flier.set_markeredgecolor('black')\n",
        "    flier.set_alpha(0.5)\n",
        "    flier.set_markersize(6)\n",
        "\n",
        "plt.title('多产品销售数据分布对比（箱线图）', fontsize=16, fontweight='bold')\n",
        "plt.ylabel('销售额（万元）', fontsize=12)\n",
        "plt.xlabel('产品类别', fontsize=12)\n",
        "plt.grid(True, alpha=0.3, axis='y', linestyle='--')\n",
        "plt.tight_layout()\n",
        "plt.show()\n",
        "\n",
        "# 添加图例说明\n",
        "print(\"图例说明：\")\n",
        "print(\"- 箱体：包含中间50%的数据（Q1到Q3）\")\n",
        "print(\"- 中位线（黑色粗线）：中位数\")\n",
        "print(\"- 均值标记（黄色三角形）：均值\")\n",
        "print(\"- 须线：延伸到正常范围的最小值和最大值\")\n",
        "print(\"- 异常值（红色圆点）：超出1.5×IQR范围的数据点\")\n",
        "print(\"- 缺口：中位数的置信区间\")\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 10,
      "metadata": {},
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/var/folders/9b/jb3nnnqn60x3dtlll6mcf0000000gp/T/ipykernel_28599/2128294718.py:8: MatplotlibDeprecationWarning: The 'labels' parameter of boxplot() has been renamed 'tick_labels' since Matplotlib 3.9; support for the old name will be dropped in 3.11.\n",
            "  bp = plt.boxplot([data1, data2, data3],\n"
          ]
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAJOCAYAAACqS2TfAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAASxxJREFUeJzt3XmYlXX9P/7nDPs2ggiJG+CuoRmmkoapmblgIpqK8lEzK8s0l/z4QU3FTEolTW3R3KJMc9+XQiXBlbQ0DC0XDBcUhBz2be7fH/6YryMgoNyemfHxuK65Ls69ndc9L+ac8zzve6kqiqIIAAAAsMpVV7oAAAAAaK6EbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QCwkm699dZMmDChojXMmzdvmfPeeOONTJs2bYW3NWnSpNTV1S113sSJE1NbW7vS9TVW06dPz/nnn5/p06ev0PK333577rrrrpKrAqA5q3KfbgBYOVVVVTn11FNz9tlnr9Dyo0aNyty5c1f6eXbfffe0bNlyienz5s1Lz549c8455+SII45YYv7xxx+fK6+8MtOmTUuLFi2W+zwDBgzIrFmz8uCDDzaY/vDDD+cLX/hC7rvvvvz2t7/NXnvtlYMPPniZ23nsscc+1H62a9cu22233Uqv92Hcfvvt2WeffXL99ddn1qxZS8yvqanJoEGD6h/369cvbdu2zejRoz+W+gBofpZ8JwcAVqkhQ4bkzTffXOn1pk+fns6dOy8x/cYbb8ybb76Zt956K88991yDeV27ds21116brl275p577lli3U033TQbbrhh/eMZM2bkwQcfzLe+9a0lll38vfyCBQvSo0ePHHrooXnooYfyi1/8Yqlh/qCDDsorr7yysruZDTbYIC+88MJS5+2///656aabVnhbF1xwQY477rhlzh8zZkx69+6d559/PmeffXbmzZuXli1b1u/PBhts0CB0V1VVrfBzA8DSCN0AULJx48blX//6V3r37p3q6v93Ztepp56aBx54II8++miD5Z988slsvfXWqampWWJb8+bNy5lnnpkkGTp0aIYOHdpg/o477lgf8Pfee+8l1v/Rj36U0047rf7xH/7wh8yePTuHH374Muvv0KFDzj///Gy77ba54YYbsmjRomWOoO+77745/fTT6x8PGjQoX/7yl/Od73xnqcuffvrp+ec//7nM5z7yyCOz0047LXP++/Xv3/8D599111356le/mtNOOy2HHnpoevbsmQsvvDBHH310/TK//vWvc+GFFy7xhQYAfBhCNwB8CAsWLFhi2gsvvJBevXotcUj4iy++mK985Ss55JBD8tvf/rZ+eqdOndKiRYv06tWrftqjjz6a/fffP6NHj24wfbHjjjsuL7zwQi644IJsvfXW+cpXvpIBAwbknHPOyX333ZdjjjkmAwYMyB133JHjjjsuF110UUaNGpVddtlliW0tWrQoF154YXbaaad85jOfyfnnn58XXnhhiZHsxx57LH//+9/z7LPP5rXXXsuaa66ZSZMmpUOHDktsc/XVV89WW22V5N2A+/LLL+ff//53HnvssQbLrbfeetlzzz2z+uqrL/X3u9juu+/+gfNXxhNPPJEJEybkV7/6VZLk7bffTpL06NGjwXJTp07N888/n8RINwAfndANAEtxxRVXZM6cOUtMX3zo8W233Zaf/vSn9dNffvnl9OvXL/369cudd97ZYJ2ddtopF110UY4++uhsueWWOfHEE5f5vKecckrWW2+97LDDDkvMO/300/PrX/86++67b773ve/lzDPPzGabbZa77rorZ511VoYNG5YNNtggV1xxRZLk3HPPzXXXXZfrrrtuqaH7yiuvzHPPPZfLL788s2bNyvnnn58+ffrkggsuyF133ZWnn346ybsj6i1atMgmm2ySLbfcMnvvvXcWLlz4gb+/yZMn1x+y/uCDDy5xvvhee+2VPffc8wO3saot/r184QtfSJK8+uqrSZJrr702Dz30UJLlj5QDwMoSugFgKU4++eT6kdD32mOPPZIkzz//fB544IHssssumTp1avbZZ5/Mnz9/mRdX++53v5snn3wyp556agYOHJgNNthgiWUuvPDCjB49On/84x+XegG1rbbaKv3798/IkSOzcOHC/PjHP87Xv/71DB8+PJtuumnuvffe/PGPf8z1119fv843vvGN9OjRI5dcckl22223bLzxxknevcL5ySefnB122CGTJk3Kr371q7z55pu5/vrrc9ttt6Vdu3bZZZddctNNN+Wyyy7LkCFD0q5duyTJ7NmzM378+Gy11VZp3br1EnU+/fTT2W+//TJ58uS0bNkyt912W33APuGEE/Lzn/88J5100vJakEsuuWS5yyzN+uuvv0Sgf+mll3LVVVclSf0o/pgxY1JdXZ1x48Zl3LhxmTRpUlq2bNngPHoj3QB8VEI3ACzF1KlTGzz+3ve+l9/+9rcNDvkePnx4unTpkn333TfTp0/P3XffXX9o9dKce+65ueWWW3Laaafl2muvbTDv9ttvz0knnZRDDjkkBxxwwFLXHzRoUP1I++KrhG+55ZbZbbfdkiS1tbU599xzl/n8v/vd7+pD93PPPZfp06fn4YcfzsMPP5zk3YuW7bjjjtlxxx2TJGPHjs1NN92U119/Peeff36eeeaZPP3003nxxRdTV1eXcePG5XOf+1yD55g9e3b23HPPTJ8+PXfeeWdGjhyZfffdN1dddVWeeeaZXHDBBRk2bFi++MUvLrPOxY455pjlLrM0++yzzxKh+7TTTlvilIA///nP+cIXvpC//OUvKYoi7dq1W+oh8wDwUQjdALACxowZkx122KF+lHSLLbbIqFGj8vnPfz69evXKI488kk9/+tMfuI2uXbvmm9/8Zq644orMnDmzfnptbW2OOeaYbLPNNrnsssuWuf4LL7xQf8GzxVcWv+iii3LjjTcmSf0h6WPGjKk/hDp5917bvXv3brCtnXfeORdeeGH69OmT//3f/83EiRNzwQUXZPr06TnrrLPqA3aSnHnmmWnXrl0233zz9O/fv/4w+c0333yJGtu3b59bbrkl3bp1S+/evdO/f//89a9/zSGHHJLk3duZvfdCax9kWXc1ve666zJ48OD87W9/+8AvORa7+eab66/ovvjohYceeih///vfc/HFFydJpkyZknnz5qVHjx4NvnAx0g3ARyV0A8ByPPnkk3nmmWcajLx+9atfTfv27fPss8/m4YcfTteuXZdYb+HChfXnDS+233775cADD8zUqVMzY8aMLFq0KNOmTcttt92Woijy1ltvNVh+jTXWSMeOHZO8GwDbtm2bJPXnm7dq1ap+2uIvBG6++eb8/e9/r9/GtGnTlrpf3//+93Pqqafm73//e2677bass846mTt3bu68885svPHG2W+//XLZZZfl/PPPz/HHH5/q6urcf//9qa2tzc4777zM39fqq6+eRx55JGeffXZuv/32TJ06Neuuu25effXV/OIXv8jkyZMzYMCAbLrppit8X+9vfvOb+cY3vpF+/fo1mF5XV5fTTjst2267bQYOHLjEerNmzcpRRx2VT3/609lvv/1y1llnpSiKDBs2LB07dsyECRPym9/8pv5w/169egndAKxSQjcALMfJJ5+crl275sADD2ww/YILLsiOO+6YE044ocFVyRd79dVXlxhhXpoPWuY3v/lNjjzyyCTv3kN61KhRSZJLL700jzzySLbaaqsMHz4866+/fkaPHp3hw4fnggsuWKH9GjFiRIYPH54zzzwzbdq0yc9//vNMnDgx//73v5O8+6XBVVddlTfffDPV1dV56aWXcsABB6Rfv34ZOHDgUgPpokWLsvvuu+fFF19MTU1N9thjj3z2s5/Neuutlw033DDnnHNOrr/++vrD6zt27JhPfepTH1jnAw88kMsvvzy77LLLEqH7v//9b/7yl7/U7/f779HdoUOHPPTQQ2nbtm2uu+66JO/27YEHHsgPf/jDvPTSS/nWt75Vv92+ffvmr3/96wr9/gBgRQjdAPABfvrTn+b+++/PL37xi3Tq1KnBvM9//vM577zzcvzxx2eNNdbIiBEjGszv3r17brnllmVu+9e//nX++te/5vLLL1/mMp/97GeXmPbf//43Z511VpJ3R7XvvffeBldMX5HDy0eNGpUf/OAHSZIzzjgjSdKtW7dsu+229cu0bNkyW221VUaPHp2XX345u+yyS9Zdd91cd911yxwBbtGiRX73u99l4cKF6devX1q1apUBAwbkrrvuype//OVcd911WbhwYe6555688soreeGFF/LII48sc/9nzpyZI488Mp/73OeW+NIjeXdU/cEHH8yBBx6Y448/Pquttlq+/vWvN1hm0003bfB4k002yde+9rWceuqpadOmTdZaa62cd9556dOnT7p3795gWSPdAHxUQjcALMNll12WoUOH5oADDsh3v/vdpS5z3HHHZfz48fnZz36WKVOm5Fe/+lX9xbjat2+/1EOeF7v33nszfvz4D1zm/erq6nLEEUfUH4Y+bNiw/OlPf8o+++yTCy+8MMm7tzMbP358/TpLuwr7F77whey+++7ZbLPN0r9//2yzzTZZZ511Mn369Lz55pv1o8977rlnhg0blu233z5t27bN3XffvcSXD+/3+c9/Pkkyf/78/PSnP81ll12WW265Jd///vez884758knn8xhhx2WJPXnqC9NURQ59NBD88Ybb+SOO+5IdXX1Updr3bp1/vjHP2bPPffMd7/73XzmM59J3759l7ndvfbaK3vttVf945122innnXdejjjiiA/cLwD4MIRuAHifBQsWZOjQoRkxYkQGDRqU3//+9x+4/GWXXZYOHTrkoosuymOPPZaf/OQnGThw4DJD4odVFEWOOeaY3HLLLfnxj3+cU089Ne3bt88111yTzTbbLL/+9a+TJOeff/5yt9W2bdvcc889SZLp06fntttuy/XXX59Ro0Zl5MiROeigg5Kk/krmM2bMyMMPP5y11lprhet96KGHcuaZZ+acc87JiBEjcuONN2bu3LlLvR3a0vb1uOOOy6233pprrrlmuRepa926da699tp89rOfzWGHHZannnoqrVq1Wu7zvPPOOznmmGOy3nrr5Zvf/OYS8410A/BRrdpPAwDQxC1atCg777xzfvazn2Xo0KG54YYblhveqqur8/Of/zx//OMf88477+SQQw5pcCGzVaEoihxxxBH55S9/mZNOOiknnHBC/by11147V199dU499dQk7x5eXhRF/c/LL7+8xPamT5+eq6++OnvuuWc+9alP5etf/3pefPHFnHbaadlll12SJDfeeGMGDRqUtm3bZtasWbnmmmvq13/mmWeWW/Ouu+6af/3rX/nCF76Qb37zm7nvvvvyta99bYX295xzzslFF12UESNGZPDgwSu0Trdu3XLppZdm/Pjxy/2iJHn3y5XBgwfnlVdeyRVXXFF/wbrTTjttmVdOB4CVZaQbAN6jRYsWGTFiRGbOnJkvfelLK7XuAQcckD333DPPPffcBx7e/GFUVVVl8ODB6du3b4455pglrvo9aNCgjB49OsmKXb381ltvzRFHHJHu3bvnqKOOypAhQ+rP5/7Xv/6Vo446Krfccku22GKL3HLLLTnrrLNy+umnZ+bMmRk2bFgGDRqUvffee4mLtr3zzjt57rnnGkw777zzUhRFbrvtthx55JEN7oX9zjvvLHV/jz766Gy00UbLvGf5suy111655pprlnr+93vNnz8/Bx98cO6555787Gc/y6677rrU5ebOnZt27dqtVA0A8F5CNwC8z3bbbbfEtN/85jd57bXX8sorryRJ/ajo+3Xs2DGf+9znSqlrt912y2677bbc5Vbk6uWHHXZY1llnney88871h3svWLAgQ4YMyU033ZR27drlrLPOysknn5zWrVvniiuuSKdOnXLuuefmhhtuyMsvv5wePXossd0bb7yx/r7hS7O0383i23W9V+fOnRsE7rfffjsnnXRSampq8tBDDyV595DypTn44IM/cN/nzJmTAQMG5IEHHsiwYcNy/PHHN5j/+uuv52c/+1neeeedjBs3LrvvvvsHbg8APojQDQArYOrUqRk2bFiSd69+vbxgV0krcvXy6urqfPnLX24wrVWrVtl6662z0UYb5fvf/366detWP69ly5a55JJLstdee9X/HhZfDO29vv3tb9efW74iDj/88IwdO3a5y3Xt2rX+fult2rTJAQcckE022WSFn+e92rVrl0022SSDBg3K0UcfvcT8Hj165O67784LL7yQnj175thjj/1QzwMASVJVOGkJAAAASuFCagAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACX5RN4yrK6uLq+//no6deqUqqqqSpcDAABAE1MURWbMmJG11lor1dXLHs/+RIbu119/Peuuu26lywAAAKCJmzRpUtZZZ51lzv9Ehu5OnTolefeXU1NTU+Fqlq6uri5TpkxJt27dPvBbE5oOPW2e9LV50tfmR0+bJ31tnvS1+WmuPa2trc26665bny+X5RMZuhcfUl5TU9OoQ/fcuXNTU1PTrP5jfpLpafOkr82TvjY/eto86WvzpK/NT3Pv6fJOWW5+ewwAAACNhNANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAAStKy0gUA0DxNmTIltbW1lS7jQ6mrq8vbb7+dGTNmpLra99NNUU1NTbp161bpMgBA6AZg1ZsyZUqOOOqIzJw7s9KlfGgLFixIq1atKl3GMq3eakH27jYld0zplmkLGm+dldKxbcdc+esrBW8AKk7oBmCVq62tzcy5M7Pr93bNGmuvUelyVlpRFFkwf0FatW6VqqqqSpezVGtMfzX7PXhROg05IFO7rFPpchqVqa9NzahLRqW2tlboBqDihG4ASrPG2mukx/o9Kl3GSiuKIvPnzU/rNq0bbehe7c15SZI11umWVp9qer9jAPikcKIaAAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROiGZmj27Nl56qmnMnv27EqXAgCUzPs+NG5CNzRDzz33XLbeeus899xzlS4FACiZ931o3IRuAAAAKInQDQAAACURugEAAKAkQjcAAACUpNGE7jvuuCNFUVS6DAAAAFhlGkXoHjt2bIYOHVr/ePfdd09VVVWDn3vvvbeCFQIAAMDKaxSh+9JLL81JJ52Uqqqq+mnXXnttiqJIURTZbrvtKlgdAAAAfDgVD92TJ0/OuHHjcvDBB+fII4/ME088sdx1brjhhmy55ZapqanJxhtvnCuvvPJjqPTjtWjRojzyyCO59tprM3r06CxatKjSJQEAAJRq0aJFGT16dLPKQRUP3SNGjMhRRx2Vq6++Otddd1022mijJMnhhx+ejh07pmPHjhk3blz98s8880wOOeSQnHfeeamtrc1dd92V0047LaNGjarULqxyN998czbeeOPst99+GTJkSHbeeedsuOGGufnmmytdGgAV8sKbL+TCP12YF958odKlAEApbr755my44YbZeeedc/DBBzebHFTR0F1bW5tLLrkkxx9/fL71rW/l2GOPTZcuXZIkV199dWbOnJmZM2dmm222qV9niy22yJtvvpmvfOUrKYoi06dPz5w5c/LMM89UajdWqZtvvjn7779/+vTpkzvvvDPvvPNOHn300WyxxRbZf//9m/x/OABWXlEU+dOzf8qUGVPyp2f/5MKjADQ7i3PQFltskUcffTQzZsxoNjmooqG7pqYmp59+eg4//PD06NEjJ5988nLXqaqqSpcuXTJnzpy0adMm2223XdZcc80MHjz4Y6i4XIsWLcqJJ56YAQMG5JZbbsnWW2+djh07pl+/frn11lszYMCA/OAHP2gW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8UMVBdAcPPfcc9l6663z5JNPpm/fvpUuB4AK8F4ALDd077rrrh9qw3369MkzzzzzodYFAACA5mC5obuurm6lN/rUU09lm222+VAFAQAAQHOx3NC92AknnLDcZTbbbLN885vfTOfOnVMUxUcqDAAAAJq6FQ7df/vb35a7TOvWrZMkNTU1efzxxz98VQAAANAMrHDofvDBB1d4o2ussUbWWGONlSrkjjvuyIABA1JVVbVS6wEAAEBjtUKh+/TTT2/wuKqqKieffHLat2+fTp06pV27dqmpqck666yTXr165Qtf+EIOP/zwtGy5Ypl+7NixGTp0aAYMGJAk2X333XPfffc1WOaee+7J7rvvvkLbAwAAgMZghVLx2WefnW222Sbt27fP3Llz88QTT+Too4+uf3zYYYelV69eefPNN/Pcc8/luOOOywMPPJA//OEPK1TEpZdempNOOqnBKPe1116bgw46KEnSr1+/D7FrAAAAUFkrfHj57373u2y88caZOHFi1l9//QbzvvrVr2a33Xarf/zggw/mq1/96gptd/LkyRk3blyuvPLKHHnkkfnWt7613HXuu+++/PCHP8zzzz+fzp0759BDD82ZZ56ZFi1arOjuAABAk7Ro0aKMGTMmb7zxRnr06JH+/fv7HAyNWPXKrrB4NPqRRx7JzTffnKIo8s477zRYZubMmSt8TveIESNy1FFH5eqrr851112XjTbaKEly+OGHp2PHjunYsWPGjRtXv/yECRMyaNCg/N///V+mT5+e++67L7///e9zwQUXrOyuAABJnqh7OQfNvzRP1L1c6VKA5bj55puz4YYbZuedd87BBx+cnXfeORtuuGFuvvnmSpcGLMNKh+7FLr/88nz7299OXV1dDjrooKy99to54YQT8uKLL6ZDhw657LLLlruN2traXHLJJTn++OPzrW99K8cee2y6dOmSJLn66qszc+bMzJw5s8E9v1966aUMGTIkgwYNSnV1dTbddNPsu+++eeihhz7srgDAJ1ZRFPnVotGZmLfzq0Wj3fITGrGbb745+++/f7bYYos8+uijmTFjRh599NFsscUW2X///QVvaKRWOHRPmjQpL730Ul555ZVUVVXlyiuvzJQpU9KiRYv8+Mc/zrHHHpv7778/m2++eR5//PHsuuuuy91mTU1NTj/99Bx++OHp0aNHTj755OWus9dee+XSSy+tfzxv3rzcd999DYI5ALBiHi9ezoTijSTJhOKNPF4Y7YbGaNGiRTnxxBMzYMCA3HrrrenXr186duyYfv365dZbb82AAQPygx/8IIsWLap0qcD7rPA53YvP2S6KYonbevXt2ze77bZbTj755FxzzTU56qijMn369Jx77rnL3e7gwYOz9dZbZ+TIkWnbtm2mTJmywsXPmDEjBx54YFq0aJETTjhhmcvNmzcv8+bNq39cW1u7ws8B8GHNmTMnybunxVA5kyZNyjszZmTO/PmVLqXRKYoily76S6pTlboUqU5VLl30l2xX1btJ3MJzzvz5eWfGjIwfP36JU93er66uLtOmTcvqq6+e6uoPfaAfjUxT6Ovi94DF7wkf1pgxYzJx4sRce+21S+xrdXV1hg4dmu233z5jxozJTjvt9JGeC1i1Vih0v/zykt96d+vWLUmy5pprpk2bNvXTDznkkPTo0SPHHHNMfvrTn37gm/aCBQsyaNCgdOzYMeeee24OO+ywDB8+PEly6KGH5vDDD0+SzF/KB6WXXnopAwcOTMeOHfPAAw+kQ4cOy3ye4cOHZ9iwYSuyqwCrzMSJE5MkQ4YMqWwhJEle3nnnfHrddStdRqPy3lHuJKlLUT/a3a9q/Q9Ys3F4+c038/Df/paHBw6sdCmwXBMnTswOO+zwodd/4413/1b79Omz1PmLpy9eDmg8Vih09+zZc5nzJk2atMS0XXbZJY8//vhyvyVv1apV9ttvv6y11lrZdttts+aaa+b555/PTTfdlJEjRy7zlmEPPPBA9ttvvwwePDgXXnhhWrdu/YHPM3To0AYj4bW1tVnXBy+gZL169UqS/P73v89mm21W2WI+wSZNmpTzhg1L7099qtKlNCrvH+Ve7L2j3Y1d7099Kjt89rM56Ywzlvu+3hRGRFl5TaGvEyZMyJAhQ+rfEz6sHj16JEnGjx+/1Nvpjh8/vsFyQOOxwoeXr4yLLroohx122HKXK4oiffv2zejRo/PLX/4ys2bNypFHHvmB6zzzzDMZMGBAzj333Hzve99boXratGnTYDQe4OPQrl27JMlmm22Wvn37VriaT67VVlstq3XqlHbL+YL2k+b9o9yLvXe0e/tyPiasMu1at85qnTqlT58+2WCDDT5w2bq6urz11lvp3r17ow1nrLym1NfF7wkfVv/+/dOrV6+cc845ufXWWxvsb11dXYYPH57evXunf//+H7VUYBUr5dXp+OOPz5tvvrnc5aqqqnL33XenS5cuGTlyZM4999yceOKJue+++zJ48OBUVVWlqqoqjz/+ePbYY4/06tUr5557bubMmZP/+7//q7+lWMeOHbPHHnuUsSsA0OwsHuVe1vFoVUkuXfSXFHElc2gsWrRokREjRuTOO+/MwIEDG1y9fODAgbnzzjtz/vnnu183NEIr9BX2KaecUloBF198cf2/N9lkkw+8yERVVVXatGmT3//+96XVAwDN3YIsyptF7TIjdZHkzaI2C1L3cZYFLMegQYNy44035sQTT8z2229fP71379658cYbM2jQoApWByzLCoXun/zkJ9lmm23Svn371NXVZezYsdluu+3Spk2bzJkzJ+PGjUv//v0/8pVOq6ur07Zt24+0DQDgg7WuapmrWn0904vZy1xm9ar2aT3vvx9fUcAKGTRoUPbZZ5+MGTMmb7zxRnr06JH+/fsb4YZGbIVP1vrd736XjTfeOHPnzk379u1z4403Zq211soLL7yQTTbZJA888ED9uSWN/ZwaAPik+1RVTT5VVbOcpf77cZQCrKQWLVq4LRg0ISudjt8/mt0U7uMJAAAAlbDCofu94XrxBc6WNR8AAABYicPL99tvv7Rt2zZFUaQoiuy5555p1apV5s2bl6Iost1229UvK4ADAADACobu4cOHN3i8//77L3W5qqqqFEWRJ5988qNXBgAAAE3cCoXuk08+uf7fN998c/bZZ5/6KyROmDAht912W/7v//4vn/nMZ3LWWWelKNzXEwAAAFbqQmqvvvpqDj300Gy66aa55557kiTt27fPGWeckdmzZ+cLX/hCrr/++lx11VXp0aNHKQUDAABAU7Hc0D1mzJgMHjw448aNyzrrrJOXX3452267bQYMGJCvf/3r6d69e1ZfffU89thjGTRoUO66664cfPDB6dSp08dRPwAAADRayw3dnTt3TpL0798//fv3z7hx4/Kzn/0sRVFk1KhR2XHHHbPRRhvloYceyk477ZQWLVrkT3/6U9l1AzR6m266aZ588slsuummlS4FgArxXgAsN3RvscUWufbaa/Of//wnu+yySw477LAMGDAg7dq1yymnnJKNNtooY8eOzejRo9OiRYvstddeueGGGz6O2gEatfbt26dv375p3759pUsBoEK8FwArfE539+7dM2zYsEycODH77rtvunXrlm7duuUPf/hDjj766Gy00UZJkgMPPNA3eQAAAJCVuE/3Yh06dMgpp5ySU045pX7axRdfXP/vvfbaK3vttdeqqQ4AAACasJW6ejkAAACw4oRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkqz0LcMAoCl69e23V3jZoiiyYP78tGrdOlVVVSVW1bi1Xfh2Nsq7v7u5LdtUupwlrExPAaBShG4AmrWampq07dQplzz00Eqtt3DhwrRs+cl+m+zSekH2WOtTuef1sZk+v1Wly1mqtp06paamptJlAMAyfbI/TQDQ7HXr1i2/vuqq1NbWrvA6dXV1efvtt9O1a9dUVzsTq1+lC/gANTU16datW6XLAIBlEroBaPa6deu2UsGsrq4unTp1Svfu3YVuAOAj8UkCAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJWla6AACavilTpqS2trbSZawydXV1efvttzNjxoxUV1f+++mampp069at0mUAAB+C0A3ARzJlypQc+e1vZ9acuZUuZZlWbzU/A7pPzp1vrZlpC1ovf4UiWbBwQVq1bJVUlV/f8nRo1zaXX3qp4A0ATZDQDcBHUltbm1lz5mbgEUele4+1K13OUnWu/Vd2e+KorDno1Py3ZuMVWKPI/PkL0rp1q1Q6db/1xmu59cpfp7a2VugGgCZI6AZglejeY+2s06t3pctYqg5TZyVJPrXW2um4xvJrLFJk/rz5ad2mdaoaw1A3ANBkVf5ENQAAAGimhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbqAUs2fPzlNPPZXZs2dXuhSAJstrKUDTJ3QDpXjuueey9dZb57nnnqt0KQBNltdSgKZP6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEkaTei+4447UhRFpcsAAACAVaZRhO6xY8dm6NCh9Y933333VFVVNfi59957K1ghAAAArLxGEbovvfTSnHTSSamqqqqfdu2116YoihRFke22266C1cGqt2jRoowePTrXXnttRo8enUWLFlW6JAAAoAQVD92TJ0/OuHHjcvDBB+fII4/ME088scLrvvjii1l99dUzceLE8gqEVezmm2/OhhtumJ133jkHH3xwdt5552y44Ya5+eabK10aNHvjZzyXMx49NBOm/bXSpQAAnxAVD90jRozIUUcdlauvvjrXXXddNtpooyTJ4Ycfno4dO6Zjx44ZN27cEuvdfvvt2WGHHTJ9+vSPu2T40O66664ccMAB2WKLLfLoo49mxowZefTRR7PFFltk//33F7yhREWSP75xWybPfiW3vHCZ64gAAB+LlpV88tra2lxyySWZO3dukmTo0KHp0qVLkuTqq6/OQQcdlCTp169fg/WGDRuW66+/Pj/96U9z+OGHf6w1w4e1aNGiDBs2LHvttVduvfXWVFe/+51Xv379cuutt2bgwIH5wQ9+kH322SctWrSocLXQ/DzSrm1envOfJMkrM57PP6eNy6e7blvhqgCA5q6iobumpiann356/vWvf+W+++7LySefvELrHXnkkTn99NPzyiuvrNDy8+bNy7x58+of19bWfqh64aMYM2ZMJk2alOuuu64+cC9WXV2doUOHZvvtt8+YMWOy0047VabIVWjOnDlJkgkTJlS4knLV1dVl2rRpWX311Zfo6yfFpEmTUvvOO5n3/3+B2hgVRZGLu6yW6lSlLkWqUp3bXrw8m6++TYPriTRG8+bOTe0772T8+PF55513Kl1Ok9VU/1YXv4Yufk0FoOmpaOhOksGDB2frrbfOyJEj07Zt20yZMmW566y99tor9RzDhw/PsGHDPmyJsEq88cYbSZI+ffosdf7i6YuXa+oWX2thyJAhlS2Ej81rr0zMBptuVukyluofMybk2TZt8u5B5kmRuiYz2v3aKxMz7tFHMnDgwEqXQgVNnDgxO+ywQ6XLAOBDqGjoXrBgQQYNGpSOHTvm3HPPzWGHHZbhw4cnSQ499ND6Q8fnz5//kZ5n6NChOeGEE+of19bWZt111/1I24SV1aNHjyTJ+PHjs/322y8xf/z48Q2Wa+p69eqVJPn973+fzTZrnEFsVWiqo2er0qRJk/Ljn56btXv2qnQpS1UURW6YfEeqiyJ17xnVbiqj3Wv37JVtPr99Tj35f713fQRN9W91woQJGTJkSP1rKgBNT0VDd6tWrbLffvtlrbXWyrbbbps111wzzz//fG666aaMHDlymed0r6w2bdqkTZs2q6Jk+ND69++fddddN8OHD89tt93W4ENfXV1dhg8fnt69e6d///4VrHLVadeuXZJks802S9++fStcTXnq6ury1ltvpXv37k3qg/yqtNpqq6VmtdXSpm3bSpeyVP+cNu7dc7nfF6ybymh3m7ZtU7PaaunTp0822GCDSpfTZDX1v9XFr6kAND0VfdcpiiJ9+/bNc889l8MPPzz9+/fPY489VsmSoDQtWrTIGWeckbvuuisDBw5scPXygQMH5s4778z555/vImqwChVFkdtevDxVWfpIdlWqctuLl7uSOQBQmoqOdFdV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fyqK4pPVV6G7EfjHP/5R9O7du/jOd75TH7ovv/zyYsMNN2yw3De+8Y3ikEMOqUCFrIzJkycX1dXVxbPPPls/7e233y6efvppfW3iNt988+IHP/hBMXfu3GLq1KnFzjvvXOy999762sRcddVVxXrrrVfceOONDT4cLK+PQ4YMKY488sgG8zfccMPiN7/5zcdSN8u2rJ5eccUVxQ9/+MMGy+67777FMcccUxSFnjZ2y+rrYpdffnnxpS99qejfv3+D0K2vjdeyenrDDTcUa621VjF//vz6ZV966aXi5ZdfLopCTxu7ZfX1P//5T9GmTZvi5ptvLurq6ooJEyYU3bt3L0aMGFEUxSerrw4vr7DZs2dn8ODBufTSS9O9e/f66f/4xz+y5ZZbNlh2yy23zPjx4z/uEllJTz75ZNq3b5/HHnssG2+8cdZcc80cd9xxWWeddfS1ifvDH/6Qa665Jh06dMgaa6yRp59+Oscff7y+NjG77757Xnzxxey3334Npi+vj0ubv8UWW+hzI7Csnh5xxBE566yz6h+//fbbefjhh7PNNtsk0dPGbll9TZJ//vOf+dGPfpTf/e53qa5u+HFWXxuvZfX0iSeeyJZbbpmTTz45a621Vnr16pXf/e53WW+99ZLoaWO3rL6uu+66+c1vfpODDjoorVq1ymabbZZu3brloIMOSvLJ6qvQXWHf+973sueee+bLX/5yg+kzZsxIhw4dGkzr0KFDZs6c+XGWx4cwbdq0zJ07N3fddVceffTRPPvss3nrrbfyP//zP/rahM2ePTtf/epX87WvfS3vvPNOXnnlley7776prq7W1yZmzTXXTMuWLZeYvrw+6nPjtayevtfkyZOzxx57ZMstt8whhxySRE8bu2X1dc6cOTnooIPyy1/+Mj169Fhivr42Xsvq6bRp0zJq1KisscYaefnll3P33XfnyiuvzIgRI5LoaWO3rL4+9dRT+da3vpWrrroqc+bMycMPP5y+ffumrq4uySerr0J3BV1zzTV59tlnc/bZZy8xr1OnTpk1a1aDabNmzUqnTp0+rvL4kNq2bZuFCxfm3HPPTdeuXdO1a9f86Ec/yj333JMk+tpEjRo1Km+//XZGjBiRDh06ZL311ssRRxyR/fbbL+3atdPXZmB5r7tel5uuJ598Mttuu23WWmut3H777fUjo3raNB1zzDHZdddds+eeey51vr42PW3bts2aa66ZU045JW3atMnmm2+eo48+Otdff30SPW2qfv/732fHHXfMwQcfnFatWmX77bfPpptumqOPPjrJJ6uvQncFjRw5Mv/85z/TrVu3dO7cOT/5yU8yduzYdO7cOV26dMk//vGPBss/88wz6dOnT4WqZUVtsskmSd4dGV1s4cKFqa6uzlZbbaWvTVSbNm2WmNaiRYu8/fbb6dmzp742A5/+9Kc/sI/Lm0/j9Ic//CH9+/fPN7/5zdxyyy1p165d/Tw9bZquueaaXHHFFencuXM6d+6csWPH5ic/+Un9Yar62vRssskmmTt3bv0IaPLuZ6fWrVsn0dOmqk2bNqmqqmowrUWLFpk4cWKST1hfK31SOf/PGWecUX8htalTpxarrbZa8Ytf/KJYtGhRcf/99xcdOnRY6pU7aXz69etXfOlLXyqmTJlSTJs2rfjSl75UHHDAAfrahM2cObPo3bt3ceyxxxazZs0q3nzzzWKXXXYp+vfvr69NWN5zwZfl9XHUqFFFx44di0cffbSYP39+cd555xVdunQppk2bVrkdYAnv7em9995btG7durjllluWuqyeNh1ZxtXLi6IovvjFLza4kJq+Ng3v7enkyZOL1VZbrfjf//3fYu7cucWzzz5brL322sUvf/nLoij0tCl5b1+ffvrpom3btsU111xTLFy4sPj73/9erL322vUXuPwk9VXobkTeG7qL4t1L73/2s58t2rZtW/Tq1au48sorK1ccK2Xq1KnFN77xjaJHjx5F9+7di69//evFf//736Io9LUp+/e//10MGDCgWH311YtPfepTxWGHHVa8+eabRVHoa1P1/g/yy+vjpZdeWvTs2bNo27Zt8bnPfa547LHHPuaKWZ739nSHHXYoqquriw4dOjT4+fa3v12/vJ42DSsTuotCX5uC9/f0H//4R/GVr3yl6NKlS9GzZ89i+PDhRV1dXf18PW0a3t/XP/3pT8U222xTdOrUqejdu3cxbNiwYuHChfXzPyl9rSqKoqjUKDsAAAA0Z87pBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQCfcG5kAgDlEboBoBmbN29e7rvvviTJT37yk+y6665Jkn//+9+ZNGlSkmS33XbLLbfc8oHb+de//pXRo0cvMf2BBx7I7bffvmqLBoBmpGWlCwAAyvP4449nn332ySmnnJLWrVsnSSZNmpQBAwZkwIABGTFiRCZMmJC5c+d+4HYuv/zy3HTTTbnrrrsaTL/66qvzn//8JxtvvHH9tHbt2qVnz56rfmcAoAmqKhxTBgDN2u23357DDjss3/3ud/P444+nbdu2mTp1au6///60bNkyHTp0yKhRo7LTTjstdf2iKLLxxhunKIq8+OKLy32+rbfeOn/9619X8V4AQNMkdANAMzZs2LAsWLAgr776av7zn//k5Zdfzh577JF27dpljTXWyA477JAvfvGLuffeexuMTnft2jXdunVLktx1113Ze++98/zzz2ejjTaqX+aZZ57JVlttlSeeeCKf+9znPvZ9A4CmQOgGgGbsq1/9aubPn58HHnggbdq0SZs2bbL11lunqqoqq622Wvr06ZPTTz99ifVOPPHEnH/++amrq8vnP//5dOnSJffee2/Gjh2b/v37L/P5vvjFLy713G8A+KRyTjcANGO33XZbTj/99Dz33HMZPHhwxo0bl9atW6dnz5752c9+ls033zxdu3bN5MmTkyQHHnhgNtpoo/zkJz9Jkvzyl7/ME088kUMOOaTBdp9++un6c8QX+/nPf54JEyZ8PDsGAE2E0A0AzdgBBxyQ559/PqNGjcqNN96YJLnuuusyYMCAHH/88XnllVdSXV2d119/Peutt17+9re/5eCDD06SjB07Nj/4wQ/StWvXJba74447LjFt7ty56devX7k7BABNjNANAM3YxRdfnDXWWCN/+tOfctlll+XUU09Nhw4dcsMNN2SLLbbIYYcdlueffz6PP/542rVrl5dffjnbbLNNkndD9FlnnZV//vOfWbhwYYPtTp48OW3btm0w7bTTTsvYsWM/tn0DgKZA6AaAZmzNNddMktx9993p06dPvvGNbyRJWrZsmc985jM5++yz88tf/jIjR47MtGnT0rNnz6y33npJkl133TW77rprDj/88CW2265du6U+3xe/+MVydgQAmiihGwCasbZt22bevHn1j6uqqur/fdVVV2XNNdfM1772tZxzzjmZOHFijjjiiBXa7sSJE9OmTZsG037605/mb3/726opHACaiepKFwAAlOeZZ57J//zP/6Rv376ZMGFC/v73v6dz58750Y9+lH333TdJssUWW+Tzn/98nn322fqR8OVp2bLlEj/V1T5WAMD7GekGgGZs3XXXzZNPPpkXX3wxZ555Zjp16pQ2bdrk2GOPTU1NTZJk+vTpmTRpUoqiyJ///OelHk7+fuuss85Spzu8HAAa8pU0ADRj7dq1y7PPPpu777479957by6//PKsvfbamT17dpJk6tSp2X333dOqVat8//vfz7e//e3ccccdy93unDlzUhRFg59TTz217N0BgCZH6AaAZmr+/Pm5//77c8IJJ2TgwIH59Kc/nRtvvDFFUWTvvffOLbfcks985jOZOXNm7r///lxwwQU5+OCDM2jQoFxyySVLbG///fdP//79k7wb5quqqhr8/PjHP85f/vKXVFVV5eqrr/6Y9xYAGieHlwNAMzVr1qwcccQR6dOnT0aOHJmBAwcmSXbbbbf861//yv/8z/9kn332yXnnnZcOHTokSa688sr07NkztbW1S2zvoosuytlnn71Cz92jR49Vth8A0JRVFUVRVLoIAKAcixYtSosWLZY6b8GCBWnVqtXHXBEAfLII3QAAAFAS53QDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoyf8HWACzYNFMCKcAAAAASUVORK5CYII=",
            "text/plain": [
              "<Figure size 1000x600 with 1 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        }
      ],
      "source": [
        "# 示例 10：水平箱线图\n",
        "np.random.seed(42)\n",
        "data1 = np.random.normal(100, 15, 100)\n",
        "data2 = np.random.normal(110, 15, 100)\n",
        "data3 = np.random.normal(105, 20, 100)\n",
        "\n",
        "plt.figure(figsize=(10, 6))\n",
        "bp = plt.boxplot([data1, data2, data3], \n",
        "                 labels=['组1', '组2', '组3'],\n",
        "                 vert=False,  # 水平显示\n",
        "                 patch_artist=True,\n",
        "                 showmeans=True)\n",
        "\n",
        "colors = ['lightblue', 'lightcoral', 'lightgreen']\n",
        "for patch, color in zip(bp['boxes'], colors):\n",
        "    patch.set_facecolor(color)\n",
        "    patch.set_alpha(0.7)\n",
        "\n",
        "plt.title('水平箱线图示例', fontsize=14)\n",
        "plt.xlabel('数值', fontsize=12)\n",
        "plt.ylabel('组别', fontsize=12)\n",
        "plt.grid(True, alpha=0.3, axis='x')\n",
        "plt.tight_layout()\n",
        "plt.show()\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 11,
      "metadata": {},
      "outputs": [
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAKyCAYAAADIG729AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAXa9JREFUeJzt3Xl4XXWdP/D3TbqnK6WlpQQQEB2E4ojDKIiWRQFBRHBBwY1WfjjIgLggoiCLwLCICi7TAUEQF1xYhEEdEHCssihbURxkEUrp3qZJ2iZtes/vj5JLQ1OaFg7p8no9z33uyTnnnvv9JF3yvt9zPqdSFEURAAAA4GVX19sDAAAAgI2V0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRuATcY111yT1tbWl3SMtra2LFy48GUa0bq77bbbcuedd3ZZt3z58m73XbJkyTq/z8yZM/PEE0+s8+tfDu3t7avdNmPGjMyfP7/Hx5o2bVqq1Wq32/7xj3+kubl5rccHAC9G6AZgk3DrrbfmqKOOyrnnnvuSjvOVr3wl48aNe8njefzxx/Oud70rDzzwwDq9/vTTT+9Sy7Rp0/La1742P/3pT7vsVxRF9txzz1xwwQXr9D6f+tSnsu+++6atrS2nnnpq/vu//7tHr/vKV76Sa665ZpX1//mf/5k3vOENeeaZZ3p0nPb29myzzTb53ve+1+32888/P6961atW+4HDC33yk5/Mvvvuu8r6KVOm5FWvelXuuuuuHHnkkfnhD3/4ose56667cscdd6z14+677+7ROAHYePTp7QEAQNmWLFmSf//3f8/w4cNzwgknrHH/jo6OdHR0dLutM9y1tbWt9vUDBgzodn21Ws0NN9yQ/fbbL2PHjs20adNy6KGHZurUqRkyZEiSZPbs2UmS0aNHr3GcK9tqq62yxx575Mgjj8zmm2+evffeO0ny05/+NPfff39OPvnktTpep6FDh6alpSW/+tWv8sMf/jDnnHNO9t1331x77bXZbLPNun1NURT5zne+k4MOOihHHnlkl22/+93v8uSTT2bs2LE9ev+f/exnmTVrVmbPnp2//e1vXbaNHDkyP/rRjzJy5Mjccsstq7z2ta99bXbYYYfa1y0tLbn99ttzzDHHdDvmJFm2bFnGjh2bj3zkI/nd736Xb33rW6mvr19l/yOOOCJPPfVUj2pY2fbbb5/HHntsrV8HwIZL6AZgo9LS0rLKDOttt92WRx55JPvvv39+8YtfdNk2ZMiQVYLh2WefnTPOOONF32fgwIGr3dYZ4F7o1ltvzWGHHZY//OEPefOb35yrrroqu+22W7785S/n61//epLkF7/4Rf793/89M2bMyMiRI190DCurVCqZPHlypk6dmv/3//5fpk6dmocffjif+MQnsttuu+V973tfj4+1suHDh2fhwoU59NBD8653vSvf+c538pnPfCbXXHNNjj/++G5f89vf/jazZ8/O+9///i7rq9Vqbr/99hx44IHdBtkXam9vz1e+8pUkySmnnJJTTjmly/a3vvWtmTVrVpLkXe961yqvP+uss/KlL32p9vUPf/jDLF68OB/72MdW+54NDQ258MILs/vuu+enP/1pli9fvtqxvuc978lpp51W+/qwww7L29/+9nzyk5/sdv/TTjstf/3rX1f73gBsnIRuADYq8+bNW23o+fWvf51f//rXXdZts802q4TuJKmrq8t//ud/rtV7X3/99bn55ptXu33XXXdNkkydOjVvfvObM378+Bx11FH57ne/my9/+csZOXJkHnzwwYwaNarbwP3oo4/m2muvTbLidPL+/fvn7LPPzlvf+tbsuOOOSZIvfelLOe6443LffffV9v3a175Wm0EfM2ZM7Xi33nprHn744Ret6ZFHHklHR0f+4z/+I/3790+SfPjDH87y5cvzm9/8Ju94xztq+9599925//77c9VVV2XQoEF54okn8t3vfjdjx47Nu9/97vz+97/PjBkz8sADD+Tggw/u8j577bXXKrPxJ554Yh577LFcfPHF2W233bL//vvn4IMPzjnnnJNf//rXOf7443PwwQfnl7/8ZU488cR885vfzK233pp99tlnlTqWL1+er3/965kwYUJ23XXXXHjhhXnsscdWmcm+66678sADD+Qvf/lLpk+fnjFjxmTatGlpaGhY5ZibbbZZXv/61ydJbr755jz55JP5+9//nrvuuqvLfltvvXXe+c53rvbMAAA2cgUAbESefPLJIknxne98Z4377rvvvsU222yzyvrTTz+9qK+vX+v3PvXUU4s1/de6xRZbFJMmTap9fffddxfjxo0r/vKXvxRFURS77757ceihh3b72l/+8pdFQ0ND0dDQUCQp6uvri4aGhuKrX/1qkaRHj5VNnDixx6/r7vHRj360y/FOPvnkbvfbc889i6Ioio985CNF3759i49+9KNdHiNGjCg++MEPdjnWl7/85SJJ8Z73vKdYtmxZceqppxZveMMbikGDBhWPPPJIMWrUqGKHHXYoZs2aVRRFUbS3txdbbLFF8YlPfKLb793kyZOLJMXvf//7orW1tdhiiy2Kfffdt7jggguKCRMmFCNGjKiNt76+vthpp52KI444ojjnnHOKpqamVY63zTbbFBMnTiyKoihmzJhRbLnllqv9Ph100EFFURTFRz/60WL77bfvdnwAbLzMdAPAC+y444456KCD8thjj61yHfGLGTt2bG02e3X23HPP/P73v699vfvuu+dvf/tbBg8enFmzZuVPf/pTzjvvvG5fe/DBB6e1tTVz587N6NGjs99+++VXv/pVbcwrO/nkk/OqV70qxx577GrHctlll+Wyyy570fH+9re/zb777pubb74573znO190307FSqfXv+Utb0myYmb+Rz/6UT784Q/n8ssv77L/zjvvnL59+3ZZ9/rXvz577bVXrrrqqnR0dOSrX/1qPv7xj+fcc8/Na1/72vzqV7/KT37yk9psfpJMnDgxY8eOzaWXXpp3vOMdte/JjBkzcvLJJ2fPPffMtGnT8p3vfCezZs3KtddemxtuuCEDBw7MPvvsk5///OeZPHlyjjrqqNrlA4sXL87DDz+c17/+9enXr98qtT744IM5/PDDM3PmzPTp0yc33HBD7ft00kkn5Rvf+EY+97nP9ej7BsDGSegGYKP029/+9kWbnSUrgmB3PvShD+VDH/pQzj777Hz5y1/u8XsWRZHjjjvuRfc57LDD8otf/CJPPfVUttlmmyTJ4MGDkyQ33nhjqtVq3vOe97zoMe64444URZHZs2fn17/+dfbff/+8973v7bLPeeedl2233XaV9WursxHZujQNW9lnPvOZJOm2oduyZctWaT532GGH5bDDDkvyfNO68ePH105nb25uzvnnn7/a97v66qtroftvf/tbFixYkClTpmTKlClJkve+971561vfmre+9a1Jkt///vf5+c9/nmeffTYXXnhhHnrooTz44IN5/PHHU61Wc++99+aNb3xjl/dYvHhx3vnOd2bBggW56aabctVVV+U973lPrrjiijz00EO5+OKLc8YZZ+Rtb3vbWn+/ANh4CN0AbJR++tOfrnL7rO50Bt/unHDCCas03frpT3+ak046Kffee2+X66N76l3velf69++fH/3oR/nCF77QZdsVV1yR8ePHd+m43Z2f/OQnSZL7778/hx12WO66664sXrw49957b22fOXPm5K9//WsuvfTS2rrdd989u+++e5djTZ06dZX7fa/sfe97XwYMGJAnn3yyxzW+0MMPP5wpU6bkrLPOymOPPZapU6fm8MMPr21fvHjxKo3pHnvssdr3vnPm/Jvf/GZ+9rOfJVlxxkCS/O///m9tNj1Zca/tV73qVV2Otffee+frX/96dt5553z+85/PP/7xj1x88cVZsGBBzjzzzFrATlbc6mzgwIHZaaedstdee+W4447L+PHjs9NOO61S16BBg3Lddddl1KhRedWrXpW99torf/rTn2o9Aj796U93abQGwKZJ6AZgo/Sd73znRU+tTpL99tvvRW/f1NTUlO9+97v5t3/7t9q9uUeMGJFkRUOyrbbaaq3HNXTo0Hz4wx/O17/+9Rx33HG1W4Xddttt+eMf/1jrYr46s2fPzo033phBgwZl1113zfTp03PMMcdk3333zVe/+tUu+z799NP54x//WPv69NNPXyV033nnnavtQp4kb3rTm7Lrrruu1f2lVw76M2bMyM4775yTTjophxxySA455JDcfvvtefWrX53x48cnSVpbW2uz/Z0qlUpt9nvJkiVJkr59+9bWdTY/+8UvftHlXufz58/vdkwnnHBCTj311DzwwAO54YYbstVWW6WtrS033XRTdtxxxxx++OGZPHlyLrzwwnz6059OXV1dbrvttjQ3N9duv9adzTbbLH/4wx9y9tln58Ybb8zcuXPT2NiYZ555Jt/61rcyc+bMHHzwwXnta1+7xjMvANhI9e4l5QDw8no5Gql1+v3vf18kKW6//fbauiuuuKJIUkybNm2dx/jUU08V/fr1Kz7/+c8XRVEUHR0dxZve9KZiiy22KBYvXvyirz3uuOOKbbfdtthjjz2K/fffv7jqqqtqDcJWtttuu9UaffXUddddVyQppk6d2mX9iSeeWAwYMKBoa2t70devqZFaUaxoOrb55psXu+66a9HR0VF0dHQUdXV1xfnnn7/a4373u98tkhTvf//7i8cff7woiqK4/fbbX7TJ29VXX93lGBdeeGFRqVSKM844o/jNb35TfP3rXy9OPPHE2vZly5YVffv2LT73uc8VRVEUjz/+eLHZZpsV73znO4tqtbrKmLbZZpviYx/7WLH99tsXSYqhQ4cWH/jAB4rzzjuv+OEPf1jcc889xaGHHlrU19fXxjR48GCN1AA2QWa6AdgoffKTn1ztrcNW9mKnlzc1NSVJt7d6amxs7PY1y5YtS58+L/7f69Zbb50TTzwxF1xwQXbbbbc88sgjueuuu3LppZe+6P2/77///vznf/5nzj///Pz85z9PsuJe0RdccEG22267zJ07t7ZvR0dH2tvbu6xLVtyH+sXeoztve9vb8vWvfz133nlnl1uErU7RTSO1TmPGjMlFF12Uj370o7nyyitz8MEHp1qtZvPNN+/2WE1NTTnzzDOTrJjV/tWvfpWbbrqptr0np5ffeuut+exnP5tkxWx/kowaNarLrH+fPn3y+te/PnfccUeefPLJ7LPPPmlsbMyPf/zjVCqVbsdWX1+fq6++Oh0dHXnTm96Uvn375uCDD87NN9+ct7/97fnxj3+cjo6O3HLLLXnqqafy2GOP5Q9/+MMav38AbFyEbgA2Sh/4wAdWCXwvdOmll77oKb+d97DedtttV9l21llnZfjw4ausX/mezy/mq1/9av7whz/kIx/5SJYvX54DDzww//Zv/7ba/ZcsWZIPfOAD2XbbbfPJT36yFroHDx6cH//4x912yH7wwQfzgx/8oMu6Cy64oBZAe2r//ffP4MGDc8011/QodK/JkUcemTPPPDMXX3xxdtlllyTp9vr4arWao48+unaP8TPOOCO/+c1v8u53v7t2Gv4NN9zQ5V7j8+bNW+U4b3nLW3LAAQfkn/7pn7LXXnvlX/7lX7LVVltlwYIFmTVrVrbYYoskyTvf+c6cccYZ2WOPPTJgwID893//d+30/9V585vfnCRZunRp/uM//iOTJ0/OddddlxNOOCF77713/vznP+ejH/1okqzSHwCATYPQDcBGacKECWu8pvv6669/0Wu6b7755iTJPffck/3226/Lto997GPrdE13pz59+mTSpEm124ftv//+q51RTZKBAwfmIx/5SA488MBVOn2fc845q1zLfOqpp2abbbbJMccc02X9P//zP69xbI8++mj+9Kc/5Z577sndd9+dW265Je9973vzox/9KOedd17Gjh2bGTNmZPr06at09O6JzhniLbbYonbN+Qs/2CiKIscff3yuu+66fPWrX82pp56aQYMG5Zprrsk//dM/5bvf/W6S5MILL1zj+w0YMCC33HJLkmTBggW54YYbcu211+bWW2/NVVddlSOOOCJJap3MW1paMmXKlGy55ZY9rul3v/tdvvKVr+Scc87JRRddlJ/97Gdpa2tb41kPAGz8/E8AAN145JFH8sc//jEDBgzI4Ycfnh//+Mc58MADX5ZjL1myJF/96ldz7rnnZtddd82AAQNy4oknZtq0aTnzzDMzaNCgbl/3pS99qdv13c0+X3jhhdluu+1qgXJ12tract999+WPf/xjfvnLXyZJDj/88PTp0ye77rpr9tprr/Tv3z+nnHJKrr766pxyyim58sorc++99+bd73537r777lWas618H/Lm5uYMHTp0lfftnCG+5JJL0q9fv2y//fa1bUVR5Oijj86VV16Zz33ucznppJNy6qmnJknGjRuXK6+8Mv3798/BBx/co9PLXxi0ly1blh133DFf+tKXss8++yRJfvazn2XSpEkZMGBAFi1alGuuuaZ2u7iHHnqo1vRtdfbbb788+uijOfbYY/OJT3wixx57bJeGcgBsuoRuADZKL+Wa7qIocswxx6Suri533XVXTjjhhLzzne/MIYccUrv2ePny5Ws9pgULFuSaa67Jueeem2effTZHH310Lr300vTt2zdnnnlmzjvvvPz0pz/N6aefniOPPDL9+/df6/dYG//4xz/ymte8JkuXLk1DQ0P+9V//Naeddlr22muvvPnNb05DQ0Nt32HDhuXEE0/MRRddlH322SdPPvlk6uvr87rXvW6V4+61115dvu68vVey4nvQ2QG+KIrcfPPN2WOPPdKvX7/aPpVKJR/84Afzhje8Iccff/wqlwAcdthhueOOO5L0rHv59ddfn6OPPjqjR4/Osccem6OOOqr2QUFnUL7uuuuyyy675LrrrsuZZ56Z0047La2trTnjjDNy2GGH5V3velcuvvjiLsdduHBh/va3v3VZd8EFF6Qoitxwww2ZNGlSl+/hwoULVxkbABs/oRuAjdKhhx6af/3Xf33RfS6//PIsW7asy7q2trbaad8XXHBBdt1119x666258MILc9FFF9Uak2277bbp06dP+vfvn2q12uXxmte8Jg8//HAqlUoeeOCB/O53v8vtt9+eW265Je3t7XnTm96Ua6+9tksYPfPMM3PUUUfls5/9bCZOnJgvfvGL+djHPpb3ve992W233V7+b9BzNVx++eV5zWtek3/+539e46nQndehf/zjH0+/fv3ytre9rUuo7HT//ffXlj/+8Y932XbMMcfksccey4QJE7JgwYL8/e9/zymnnLLKMd7xjnf06PrxFwbh7nz0ox/NVlttlb333rtW47Jly3LUUUfl5z//eQYOHJgzzzwzJ598cvr165fLL788Q4YMyfnnn5+f/vSnefLJJzN27NhVjvuzn/2sdt/w7nR36v3KM/oAbBqEbgA2Svvvv/8ar+n+7W9/m0cffbTLuu9///u55pprMmnSpFrDsT59+uQLX/hCPve5z+X+++/Po48+mpkzZ6apqSmLFi3K0qVLs3z58hRFkbq6urz73e+uXZ/99a9/Pd///vczevToHHXUUfnEJz6x2g8Ddtxxx9x444158MEHc+GFF+aSSy7JRRddlNtuu612vfHL7aijjurxvv3798/NN9+co48+On/4wx/yla98pdv9Xv/619eWX9jM7lOf+lQmT56cG264ITNnzszRRx9dazS2LnpyenldXV3e/va3d1nXt2/f7Lbbbnn1q1+dE044IaNGjapt69OnTy699NIcdNBBOeOMM5Kk2zH+v//3/2rXlvfExz72sS6n3gOwaagUK9/XAwA2Ah0dHamvr3/RxmSdiqJYZb/rrrsuhx56aI9evyazZs3KzJkzM378+LU+XktLS/7v//5vnZqVAQDrB6EbAAAASlLX2wMAAACAjZXQDQAAACURugEAAKAkQjcAAACUZJO+ZVi1Ws2zzz6bIUOGvCwdagEAANg0FEWRlpaWbLnllqmrW/189iYdup999tk0Njb29jAAAADYQE2bNi1bbbXVardv0qF7yJAhSVZ8k4YOHdrLowEAAGBD0dzcnMbGxlquXJ1NOnR3nlI+dOhQoRsAAIC1tqZLlTVSAwAAgJII3QAAAFASoRsAAABKst6E7rlz52a77bbLHXfcUVv37W9/O69+9aszdOjQ7Lrrrrnxxhu7vOb73/9+tttuuwwaNChveMMbMmXKlFd41AAAALB660XonjJlSvbYY488+eSTtXU33XRTTj311PzoRz9Kc3NzLr/88hx55JH529/+liS58847c9xxx+Wyyy5LS0tLPv7xj+eggw7KvHnzeqsMAAAA6KLXQ/eVV16ZD33oQzn33HO7rH/nO9+ZJ598Mm984xtTrVYzb968LFmyJH/961+TJJdddlk++MEPZp999kl9fX2OP/74jBo1Ktddd11vlAEAAACr6PXQfcABB+Txxx/P4Ycf3mV9XV1dhg8fnv/7v/9L//79c8ABB2T33XfP/vvvnySZOnVqxo8f3+U1u+yySx5++OHVvld7e3uam5u7PJKkKIra87ouV6vVtV7uPMbaLr8c41WTmtSkJjWpSU1qUpOa1KQmNb205Z7o9dA9ZsyY9Omz+tuFb7/99lmyZEn+/Oc/Z4cddsicOXOSJC0tLWloaOiyb0NDQ1pbW1d7rHPPPTfDhg2rPRobG5OkFr5bWlrS0tJSW9d5rKampixevDhJsmDBgixZsiRJMn/+/LS1tdWWly5dmmTF9enLli1LksyZMycdHR1JktmzZ6daraZara6ynCQdHR21+pYtW5a5c+cmSZYuXZr58+cnSdra2mrLS5YsyYIFC5IkixcvTlNTU5KktbVVTWpSk5rUpCY1qUlNalKTmtRUck09USnWJqKXrFKp5Pbbb8+ECRO63X7BBRfkf//3f3PjjTfm9a9/fSZOnJjjjz++tv2www7LNttsk4svvrjb17e3t6e9vb32dXNzcxobG9PU1JRhw4bVPq2oVCprvVytVlOpVNZqua6urvYpydosr+sY1aQmNalJTWpSk5rUpCY1qUlNL89yS0tLhg0bloULF2bo0KFZndVPMfeyr33ta7n77rvzk5/8pLZuyZIleeaZZ5Ikr3vd6zJ16tQur3nooYdy0EEHrfaY/fv3T//+/VdZX6lUujyvy3JdXd06LXf+IVqb5XUdo5rUpCY1qUlNalKTmtSkJjWp6eVb7oleP718dd761rfm+uuvz/XXX59qtZrf//73+cY3vpEPfOADSZKjjz46P/rRj3LXXXdl2bJlufDCCzN//vwcdthhvTxyAAAAWGG9nel+4xvfmGuvvTannXZaPvzhD2fLLbfMl7/85ZxwwglJkn333TcXXXRRjjjiiMyaNSs777xzbrnllowYMaKXRw4AAAArrFfXdL/Smpube3QOPgAAAKysp3lyvT29HAAAADZ0QjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQkj69PQAAXnlvfOPkzJzZ2tvDYD03e/aiLF9epL6+ktGjG3p7OKzHxowZnD/96ZjeHgbAeknoBtgEzZzZmunTW3p7GGwgqtXCnxcAWEdCN8AmaMyYwb09BDYAM2a0plotUldXydix/sywev5NAVg9oRtgE+Q0UHpiq62+lunTWzJ27OA888xJvT0cANggaaQGAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJOtN6J47d26222673HHHHbV111xzTXbeeecMHTo0r371q3PJJZd0ec33v//9bLfddhk0aFDe8IY3ZMqUKa/wqAEAAGD11ovQPWXKlOyxxx558skna+tuu+22/Nu//Vu++93vZuHChbn66qtz2mmn5Wc/+1mS5M4778xxxx2Xyy67LC0tLfn4xz+egw46KPPmzeutMgAAAKCLXg/dV155ZT70oQ/l3HPP7bL+qaeeygknnJC3vOUtqVQqedOb3pS99947v/vd75Ikl112WT74wQ9mn332SX19fY4//viMGjUq1113XW+UAQAAAKvo09sDOOCAA3LUUUelT5+uQzn66KO7fD1v3rxMmTIlF154YZJk6tSpmThxYpd9dtlllzz88MPlDhgAAAB6qNdnuseMGbNK4H6hmTNn5sADD8z48eNz5JFHJklaWlrS0NDQZb+Ghoa0trau9jjt7e1pbm7u8kiSoihqz+u6XK1W13q58xhru/xy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+c9Jkn322eflGSFQqiUdy1NXV8nmY3QGBwBemvr6utrdRl63W9dty5Yuz9xZi7oE8VnPzZIvnL8k9ZVKBvXV24VNV49C98ruuOOOHHvssbnyyivzmc98Jl/96ldz4oknpq6uLhdffHG++MUv5s477yxjrMBa+sgJ/5J/3Xvb3h4GALAR69uvPmMbh2Zs46ozfZdfcFfu//20XhgVrD/W6T49J5xwQgYMGJCzzjorSfKFL3whX/jCF5IkZ511Vjbh3mwAAMBzXK0GPQjdv/zlL3PssccmSe67777VXufp+k8AAADoao2he/Dgwdl6661TFEX+5V/+5ZUYEwAAAGwU1hi6995775xyyimpVCp54IEHXoEhAQAAwMahR43UOk8d32WXXZIky5YtS5IsXbq09lxXV9dlHQAAAGzq1rp7eVEU2XXXXVMURQYOHJgk2WabbWrbBg4c6PpuAAAAyDqE7v/93/990e1FUeStb33rOg8IAAAANhZrDN133nlnJk6cmO233z5PPPFE9txzzzUe9PDDD8/Qoavepw8AAAA2JWsM3VtuuWUOO+ywXH/99dlxxx3zjne8I5tvvvmLvmbAgAH5/Oc/n6uuuuplGygAAABsaNbYvfzVr351zj///Dz66KO54YYbMn/+/PzgBz/Ir371q9TX13f76NOnT+rr61+J8QMAAMB6a62u6T7ooIPyzne+M9/61rfyuc99Lq973evy2c9+tqyxAQAAwAZtrRupVSqVfOpTn8o///M/p62trYwxAQAAwEZhjaeXr2zu3Ln5/Oc/nyTZc889s++++3a737e//e2cd955L310AAAAsAFbq9A9b968XHjhhfniF7+Y6667Ls8888wq+9x000058cQTs3Tp0pdtkAAAALAhWqvQ3enRRx/NZz/72Wy99dbZbrvtcvbZZ2fGjBn5/ve/n/e+97056qijctppp73cYwUAAIANyjpd033ttdemrq4uc+fOzS9+8Yt861vfyle+8pUURZETTjghX/va18oYKwAAAGxQ1hi6b7jhhrS1tWXs2LG1xmmVSiXPPPNM7r777tx0003561//mj322CPTpk3LzTffnM985jMZN25c6YMHAACA9dkaQ/e3vvWtPPLII5k5c2aWL1+eJNliiy3S0tKS3XffPRMmTMg555yTnXfeOQsWLMgBBxyQAw88MHfffXcGDhxYegEAAACwvlrjNd2/+c1vMm3atCxatCh33nlnzjzzzAwdOjTLly/Pa17zmhx33HHZeeedkyQjRozIzTffnPnz59e6nAMAAMCmao2h+5lnnsnnPve5LF++PFOmTMlf/vKXPPLIIznmmGNy00035WMf+1iuvvrqtLS0JEk233zzXHrppfntb39bmxkHAACATdEaTy9va2vLL3/5y0yZMiV77LFHmpqa8pnPfCZ//etfM3Xq1NTX12fkyJE5++yzc/zxx2fRokU599xz84Mf/CD19fWvRA0AAACwXlrjTPcOO+yQW2+9NSNHjkxbW1uKoshTTz2Vm2++OSNHjszw4cNTFEUuuOCC7Ljjjjn44IOzfPny7Ljjjq/E+AEAAGC9tcbQ/fa3vz1HH3102tra8t///d+57777snjx4rz73e/OlVdeWdvvjjvuyEEHHZT77rsvp556ahoaGsocNwAAAKz31nh6+X777ZckaW1tTbVazZ/+9KfsvvvuGTp0aM4666xcf/31qVQqGTBgQFpbWzN06NBcfPHFec973lP64AEAAGB9tsaZ7pNPPjlLly7Nt7/97Wy99dZpa2vLj370o7zvfe/LpZdemq222ipFUeTII4/MDTfckF/84hd58MEH88tf/vKVGD8AAACst3p0y7BzzjknV155Zbbaaqvsu+++Oeqoo3LYYYdl//33z6WXXpok2WmnnbLddttl7733zsSJEzN58uTSBw8AAADrszWG7gkTJuQ3v/lN3vWud6Vv377p169fzjzzzOy4446ZO3dukqR///758pe/nD/96U9JkoMPPjhTp05NURTljh4AAADWY2u8prtfv37Za6+9kiSnnXZabf21115bW16yZEmX1+y111554IEHUqlUXq5xAgAAwAZnjTPd66Jv374ZPnx4GYcGAACADUYpoRsAAAAQugEAAKA0QjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJ+vT2AIDyPDp1TjqWVXt7GADAJmr2jNbeHgL0OqEbNmJ/uPXJ/OHWJ3t7GMAG6qnHFmT5smrq+9Zlmx1G9PZwgA1UfaXS20OAXiV0w0ZqSD9/vYGXptpRTUdHNZWKf1MAYF35HxQ2Mm9845b50pfe2tvDADYCkybdmHnzlmTo0P7+XQFesuHDB/T2EKBXCN2wkdluuxHZbjungQIv3ac+9d9JkgED+uTQQ1/by6MBgA2T7uUAAABQkvU+dP/1r3/N29/+9owYMSI77rhjLr744lSrK7ox33vvvdl9990zaNCgbLvttpk8eXIvjxYAAACet16H7tbW1hxwwAHZfvvtM3369PzP//xPLr/88px99tlZsGBBDjzwwBxxxBFZuHBhrrnmmpx00km57bbbenvYAAAAkGQ9D91TpkzJnDlz8o1vfCODBg3KNttsky984Qv51re+lV/84hcZMWJETjrppPTt2zd77rlnjjjiiFxxxRW9PWwAAABIsp6H7o6OjvTr1y99+/atrauvr8/s2bPzwAMPZPz48V32Hz9+fB5++OHVHq+9vT3Nzc1dHklSFEXteV2Xq9XqWi93HmNtl1+O8apJTWpSk5rUtKaaVrax1LQx/pzUpCY1qUlNvVdTT6zXofstb3lLBg0alJNPPjmLFy/OP/7xj3zta19LsuLU84aGhi77NzQ0pLW1dbXHO/fcczNs2LDao7GxMUlq4bulpSUtLS21dZ3HampqyuLFi5MkCxYsyJIlS5Ik8+fPT1tbW2156dKlSZK5c+dm2bJlSZI5c+ako6MjSTJ79uxUq9VUq9VVlpMVHzLMmTMnSbJs2bLMnTs3SbJ06dLMnz8/SdLW1lZbXrJkSRYsWJAkWbx4cZqammrfGzWpSU1qUpOaXmpNnb+wdO6/MdS0Mf6c1KQmNalJTb1XU09UirWJ6L3gwQcfzKc//ek8+OCDefWrX52jjjoq//7v/55JkyZl3rx5+fnPf17b95vf/GauuOKK3H///d0eq729Pe3t7bWvm5ub09jYmKampgwbNqz2aUWlUlnr5Wq1mkqlslbLdXV1tU9J1mZ5XceoJjWpSU1qUtPa1NTYeHGmT2/JuHFD8vTTJ24UNW2MPyc1qUlNalJT79TU0tKSYcOGZeHChRk6dGhWZ72+T/fSpUvT0dGR2267LZVKJUlyySWX5HWve13+5V/+JRdccEGX/R966KHsvPPOqz1e//79079//1XWdx6783ldluvq6tZpufMP0dosr+sY1aQmNalJTWpam5pW1pNaN4SaNsafk5rUpCY1qan3auqJ9fr08qIost9+++V73/teiqLIPffck3POOScnnHBCDjvssMyePTvf/va3U61W89vf/jY//vGPM3HixN4eNgAAACRZz0N3//79c/311+db3/pWBg8enPe///35/Oc/n0mTJmXkyJG5+eabc9lll6WhoSETJ07MJZdckgkTJvT2sAEAACDJen56eZK87W1vy3333dfttj333HO12wAAAKC3rdcz3QAAALAhE7oBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlGS9D9333XdfJkyYkOHDh2fs2LE5/vjj097eniS59957s/vuu2fQoEHZdtttM3ny5F4eLQAAADxvvQ/dhx12WHbffffMmTMnU6dOzYMPPpizzjorCxYsyIEHHpgjjjgiCxcuzDXXXJOTTjopt912W28PGQAAAJJsAKG7oaEhRVGkWq2mUqmkT58+eeihh/KLX/wiI0aMyEknnZS+fftmzz33zBFHHJErrriit4cMAAAASTaA0P3DH/4w11xzTRoaGrL55pvnwQcfzKc//elMnTo148eP77Lv+PHj8/DDD6/2WO3t7Wlubu7ySJKiKGrP67pcrVbXernzGGu7/HKMV01qUpOa1KSmNdW0so2lpo3x56QmNalJTWrqvZp6Yr0O3YsXL84hhxyS973vfVm4cGGeeuqpvOc970ldXV1aWlrS0NDQZf+Ghoa0trau9njnnntuhg0bVns0NjYmSS18t7S0pKWlpbau81hNTU1ZvHhxkmTBggVZsmRJkmT+/Plpa2urLS9dujRJMnfu3CxbtixJMmfOnHR0dCRJZs+enWq1mmq1uspyknR0dGTOnDlJkmXLlmXu3LlJkqVLl2b+/PlJkra2ttrykiVLsmDBgtr3qqmpKUnS2tqqJjWpSU1qUtNLrqnzF5bO/TeGmjbGn5Oa1KQmNamp92rqiUqxNhH9FXbjjTfmQx/6UJqamtKnT58kyR/+8IcccsghOeKIIzJjxoz8/Oc/r+3/zW9+M1dccUXuv//+bo/X3t5ea8KWrPgmNjY2pqmpKcOGDat9WlGpVNZ6uVpdcfr72izX1dXVPiVZm+V1HaOa1KQmNalJTWtTU2PjxZk+vSXjxg3J00+fuFHUtDH+nNSkJjWpSU29U1NLS0uGDRuWhQsXZujQoVmdPqvdsh7o37//Kuvq6+szb968bLPNNvnNb37TZdtDDz2UnXfe+UWP190xK5VKl+d1Wa6rq1un5c4/RGuzvK5jVJOa1KQmNalpbWpaWU9q3RBq2hh/TmpSk5rUpKbeq6kn1uvTy9/ylrdk9OjR+cxnPpPFixdn9uzZ+eIXv5i99torRx99dGbPnp1vf/vbqVar+e1vf5sf//jHmThxYm8PGwAAAJKs56G7oaEhv/nNb/LEE0+ksbEx48ePT2NjY372s59l5MiRufnmm3PZZZeloaEhEydOzCWXXJIJEyb09rABAAAgyXp+enmS7LDDDvnlL3/Z7bY999wz99133ys8IgAAAOiZ9XqmGwAAADZkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUZL0O3ddcc00GDx7c5dGvX7/069cvSXLvvfdm9913z6BBg7Lttttm8uTJvTxiAAAAeN56HbqPPPLItLa21h5PPPFERo0alUsuuSQLFizIgQcemCOOOCILFy7MNddck5NOOim33XZbbw8bAAAAkiSVoiiK3h5ETxRFkf322y/jxo3LVVddlcsvvzznnXde/v73v9f2mTRpUtra2vKDH/ygR8dsbm7OsGHDsnDhwgwdOrSsoQOsd974xsmZObO1t4fBem7GjNZUq0Xq6ioZO3Zwbw+H9diYMYPzpz8d09vDAHhF9TRP9nkFx/SS/OxnP8u9996bH/7wh0mSqVOnZvz48V32GT9+fL73ve/1xvAANigzZ7Zm+vSW3h4GG4hqtfDnBQDW0QYRuqvVak477bR89rOfzRZbbJEkaWlpSUNDQ5f9Ghoa0tq6+pmb9vb2tLe3175ubm5OsmIWfeXnSqWy1svVajWVSmWtluvq6lIURYqiWKvldR2jmtSkJjV1Lo8ZY9aSNZs9e1GWLy9SX1/J6NENa34Bm6zOf1PW53/3Xo5lNalJTWpaebnHig3A7bffXtTX1xfPPPNMbd0JJ5xQHHbYYV32+8Y3vlG8/vWvX+1xTj/99CLJKo+nn366KIqiWLhwYbFw4cKiKIqiqampaG5uLoqiKObPn1+0trYWRVEU8+bNKxYtWlQURVHMnTu3WLx4cVEURTFnzpyira2tKIqimDVrVtHe3l4URVHMnDmzWLp0aVEURTFjxoyio6OjWL58eTFjxoxi+fLlRUdHRzFjxoyiKIpi6dKlxcyZM4uiKIr29vZi1qxZRVEURVtbWzFnzpyiKIpi8eLFxdy5c4uiKIpFixYV8+bNK4qiKFpbW4v58+cXRVEUzc3NRVNTk5rUpCY1qUlNalKTmtSkJjWpqaSaFi5cWCSp7b86G8Q13Z/61Kfy97//Pb/+9a9r6/7rv/4rF1xwQR599NHaukmTJqW9vT1XX311t8fpbqa7sbExTU1NGTZs2Cb/SY2a1KQmNalJTWpSk5rUpCY1qalnyy0tLT26pnuDCN1veMMb8u53vzunn356bd28efOy/fbb55xzzsmxxx6bO+64I4ccckhuuummTJgwoUfH1UgNAACAddHTPLle3zKs01NPPZVddtmly7qRI0fm5ptvzmWXXZaGhoZMnDgxl1xySY8DNwAAAJRtg5jpLouZbgAAANbFRjXTDQAAABsioRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AdGvhU0/l7jPPzMKnnurtoQDABkvoBgC6NfPeezP9+usz8957e3soALDBEroBgG7NfeCBZNaszH3wwd4eCgBssPr09gAAgPXD4rlzs3ThwiRJURSZd889GVCpZN7dd2fBY4+lUqkkSfoPH56BI0f25lABYIMhdAMASZK7v/SlLLjnntrXdYsXZ+fGxtz39NO5/f3vr60fsfvu2fu73+2NIQLABkfoBgCSJGMnTMiCe+7JuCVL8pqxY9N3883T0L9/Rg4ZkmUdHfm/GTMyfeDAjN17794eKgBsMFzTDQAkSV57xBHZ6fOfz/SBAzNz4cI09O+fJGno3z8zm5oyfeDA7HTyyXntBz7QyyMFgA3Heh+6Fy9enP/3//5fNt9884wYMSLvete7Mn369CTJvffem9133z2DBg3Ktttum8mTJ/fyaAFgw/baI47Iq487Ln9dvDhty5ZlaUdH2pYty1+XLMmrP/UpgRsA1tJ6H7o/8YlP5C9/+UseeOCBTJ8+PQMHDszRRx+dBQsW5MADD8wRRxyRhQsX5pprrslJJ52U2267rbeHDAAbtOry5alfujQPPP10bvrHP/LgtGmpX7o0xfLlvT00ANjgVIqiKHp7EKsza9asbLnllpk6dWp22mmnJMn8+fPzzDPP5N577815552Xv//977X9J02alLa2tvzgBz/o0fGbm5szbNiwLFy4MEOHDi2lBgDYkBRFkVve9760/fnP6T9+fF71/vfnyWuvTftDD2XAbrvlwJ/+tNbFHAA2ZT3Nk+v1TPef//znDBo0KHfddVd23HHHjBkzJieeeGK22mqrTJ06NePHj++y//jx4/Pwww/30mgBYMO3vL09DWPGZNykSdnvqquy05FHZr+rrsq4SZPSMGZMlre39/YQAWCDsl53L58/f37a2tpy8803549//GOS5Mgjj8yHP/zhjBkzJg0NDV32b2hoSGtr62qP197envaVfllobm5OsuJT/ZWfK5XKWi9Xq9VUKpW1Wq6rq0tRFCmKYq2W13WMalKTmtSkJjWtabmuX7+89ZvfTFY6Tr+hQ/Mvp5ySyoqDrrbu9bWmjfHnpCY1qUlNaur9mnpqvZ7pHjBgQDo6OnL++edn5MiRGTlyZM4666zccsstSZJFixZ12X/RokUZMmTIao937rnnZtiwYbVHY2NjkufDd0tLS1paWmrrOgN8U1NTFi9enCRZsGBBlixZkuT5DwU6l5cuXZokmTt3bpYtW5YkmTNnTjo6OpIks2fPTrVaTbVaXWU5STo6OjJnzpwkybJlyzJ37twkydKlSzN//vwkSVtbW215yZIlWbBgQZIVDeeampqSJK2trWpSk5rUpCY1rXNNRdJtTZW6ug22po3x56QmNalJTWrq/Zp6Yr2+prvzFPKHHnoou+yyS5Lkj3/8Y/baa69cfPHFueSSS/Loo4/W9p80aVLa29tz9dVXd3u87ma6Gxsb09TUlGHDhm3yn9SoSU1qUpOa1KQmNalJTWpSk5p6ttzS0tKja7rX69CdJG9+85vT0NCQH//4x6mvr8/73ve+jBw5Mt/+9rez/fbb55xzzsmxxx6bO+64I4ccckhuuummTJgwoUfH1kgNAACAdbFRNFJLkptuuinbbrttxo8fn9e+9rXZeuutM3ny5IwcOTI333xzLrvssjQ0NGTixIm55JJLehy4AQAAoGzr/Ux3mcx0AwAAsC42mpluAAAA2FAJ3QAAAFASoRsAAABKInQDAABASYRuAAAAKInQDQAAACURugEAAKAkQjcAAACUROgGAACAkgjdAAAAUBKhGwAAAEoidAMAAEBJhG4AAAAoidANAAAAJRG6AQAAoCRCNwAAAJSkT28PoDcVRZEkaW5u7uWRAAAAsCHpzJGduXJ1NunQ3dLSkiRpbGzs5ZEAAACwIWppacmwYcNWu71SrCmWb8Sq1WqeffbZDBkyJJVKpbeHAwDrlebm5jQ2NmbatGkZOnRobw8HANYrRVGkpaUlW265ZerqVn/l9iYdugGA1Wtubs6wYcOycOFCoRsA1pFGagAAAFASoRsAAABKInQDAN3q379/Tj/99PTv37+3hwIAGyzXdAMAAEBJzHQDAABASYRuAAAAKInQDQAAACURugGA1Zo7d26222673HHHHb09FADYIAndAEC3pkyZkj322CNPPvlkbw8FADZYQjcAsIorr7wyH/rQh3Luuef29lAAYIPWp7cHAACsfw444IAcddRR6dPHrwoA8FL4nxQAWMWYMWN6ewgAsFFwejkAAACUROgGAACAkgjdAAAAUBKhGwAAAEqikRoA8KKKoujtIQDABstMNwAAAJRE6AYAAICSCN0AAABQEqEbAAAASiJ0AwAAQEmEbgAAACiJ0A0AAAAlEboBAACgJEI3AAAAlEToBgAAgJII3QAAAFASoRsAAABK8v8B0Hup9WmSPsYAAAAASUVORK5CYII=",
            "text/plain": [
              "<Figure size 1000x700 with 1 Axes>"
            ]
          },
          "metadata": {},
          "output_type": "display_data"
        }
      ],
      "source": [
        "# 示例 11：自定义箱线图样式\n",
        "np.random.seed(42)\n",
        "data = np.random.normal(100, 15, 100)\n",
        "\n",
        "fig, ax = plt.subplots(figsize=(10, 7))\n",
        "bp = ax.boxplot(data, \n",
        "                patch_artist=True,\n",
        "                notch=True,\n",
        "                showmeans=True,\n",
        "                showfliers=True,\n",
        "                widths=0.6)\n",
        "\n",
        "# 自定义各个元素\n",
        "box = bp['boxes'][0]\n",
        "box.set_facecolor('lightblue')\n",
        "box.set_alpha(0.8)\n",
        "box.set_edgecolor('navy')\n",
        "box.set_linewidth(2)\n",
        "\n",
        "# 自定义中位线\n",
        "median = bp['medians'][0]\n",
        "median.set_color('red')\n",
        "median.set_linewidth(3)\n",
        "median.set_linestyle('--')\n",
        "\n",
        "# 自定义须线\n",
        "for whisker in bp['whiskers']:\n",
        "    whisker.set_color('navy')\n",
        "    whisker.set_linewidth(2)\n",
        "    whisker.set_linestyle('-')\n",
        "\n",
        "# 自定义端点\n",
        "for cap in bp['caps']:\n",
        "    cap.set_color('navy')\n",
        "    cap.set_linewidth(2)\n",
        "\n",
        "# 自定义均值标记\n",
        "for mean in bp['means']:\n",
        "    mean.set_marker('D')  # 菱形\n",
        "    mean.set_markerfacecolor('gold')\n",
        "    mean.set_markeredgecolor('black')\n",
        "    mean.set_markersize(10)\n",
        "\n",
        "# 自定义异常值\n",
        "for flier in bp['fliers']:\n",
        "    flier.set_marker('*')\n",
        "    flier.set_markerfacecolor('red')\n",
        "    flier.set_markeredgecolor('darkred')\n",
        "    flier.set_markersize(8)\n",
        "    flier.set_alpha(0.7)\n",
        "\n",
        "ax.set_title('自定义样式的箱线图', fontsize=14, fontweight='bold')\n",
        "ax.set_ylabel('数值', fontsize=12)\n",
        "ax.grid(True, alpha=0.3, axis='y', linestyle=':')\n",
        "plt.tight_layout()\n",
        "plt.show()\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 总结\n",
        "\n",
        "本教程详细介绍了 Matplotlib 箱线图的绘制方法，包括：\n",
        "\n",
        "1. **基础箱线图**：\n",
        "   - 使用 `plt.boxplot(x)` 绘制箱线图\n",
        "   - 理解箱线图的五个统计量：最小值、Q1、中位数、Q3、最大值\n",
        "   - 使用 `labels` 参数为多组数据添加标签\n",
        "\n",
        "2. **箱线图定制**：\n",
        "   - `notch=True`：显示中位数的置信区间缺口\n",
        "   - `patch_artist=True`：填充箱体，便于设置颜色\n",
        "   - `showmeans=True`：显示均值标记（三角形）\n",
        "   - `showfliers=True/False`：控制是否显示异常值\n",
        "\n",
        "3. **实际应用**：\n",
        "   - 多组数据分布对比\n",
        "   - 水平箱线图（`vert=False`）\n",
        "   - 自定义箱线图各个元素的样式\n",
        "\n",
        "**关键要点**：\n",
        "- 箱线图用于展示数据的分布情况和统计特征\n",
        "- 箱体包含中间50%的数据（Q1到Q3）\n",
        "- 中位数是数据的中心趋势，均值可能受异常值影响\n",
        "- 异常值是超出1.5×IQR范围的数据点\n",
        "- 缺口不重叠表示中位数差异显著\n",
        "- 箱线图特别适合比较不同组数据的分布\n"
      ]
    }
  ],
  "metadata": {
    "kernelspec": {
      "display_name": "ml311",
      "language": "python",
      "name": "python3"
    },
    "language_info": {
      "codemirror_mode": {
        "name": "ipython",
        "version": 3
      },
      "file_extension": ".py",
      "mimetype": "text/x-python",
      "name": "python",
      "nbconvert_exporter": "python",
      "pygments_lexer": "ipython3",
      "version": "3.11.0"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 2
}
